fullstuckdev/sql-agent
1
1import mysql from 'mysql2/promise';2 3export async function createConnection(uri: string) {4 try {5 const connection = await mysql.createConnection(uri);6 return connection;7 } catch (error) {8 throw new Error('Failed to connect to database');9 }10}11 12export async function executeQuery(connection: mysql.Connection, query: string) {13 try {14 const [rows] = await connection.execute(query);15 return rows;16 } catch (error) {17 throw new Error(`Failed to execute query: ${error}`);18 }19}20 21export async function getTables(connection: mysql.Connection) {22 try {23 const [rows] = await connection.execute('SHOW TABLES');24 return Object.values(rows).map((row: any) => Object.values(row)[0]);25 } catch (error) {26 throw new Error('Failed to fetch tables');27 }28}29 30export async function getTablesList(connection: mysql.Connection) {31 try {32 const [rows] = await connection.execute('SHOW TABLES');33 return Object.values(rows).map((row: any) => Object.values(row)[0]);34 } catch (error) {35 throw new Error('Failed to fetch tables list');36 }37}