discontinuedPackage connect_database has been discontinued.
getColumns method
Implementation
Future<Result<List<Map<String, dynamic>>>> getColumns(
String tableName) async {
final sanitizedTable = tableName.replaceAll("'", "''");
String query;
switch (driver.type) {
case DatabaseType.sybaseAnywhere:
query = '''
SELECT
c.column_name as name,
d.domain_name as type,
c.width as length
FROM SYS.SYSCOLUMN c
JOIN SYS.SYSTABLE t ON c.table_id = t.table_id
JOIN SYS.SYSDOMAIN d ON c.domain_id = d.domain_id
WHERE t.table_name = '$sanitizedTable'
''';
break;
case DatabaseType.sqlServer:
case DatabaseType.postgresql:
final defaultSchema = _getDefaultSchema();
query = '''
SELECT
column_name as name,
data_type as type,
character_maximum_length as length
FROM information_schema.columns
WHERE table_name = '$sanitizedTable'
AND table_schema = '$defaultSchema'
''';
break;
}
return await driver.execute(query);
}