Je dois obtenir les noms de colonne, les clés primaires, les clés étrangères et d'autres informations de schéma. La classe DataTable
semble contenir tous ces éléments.Récupérer des informations DataTable pour une table dans SQL Server
Vous trouverez ci-dessous le code actuel. Avec cela, je pourrais récupérer toutes les informations sauf les clés étrangères . Je m'attends à ce qu'ils soient définis dans DataTable.Constraints
mais ils ne le sont pas. Ceci est mon code actuel:
private static DataTable LoadSchemaInfo(string tableName, SqlConnection connection)
{
string cmdText = "SELECT * FROM [" + tableName + "] WHERE 1 = 0";
// Create a SqlDataAdapter to get the results as DataTable
var sqlDataAdapter = new SqlDataAdapter(cmdText, connection);
// Create a new DataTable
var dataTable = new DataTable(tableName);
// Fill the DataTable with the result of the SQL statement
sqlDataAdapter.FillSchema(dataTable, SchemaType.Source);
return dataTable;
}
Toute idée comment récupérer toute information ou comment obtenir le FK (de préférence sans utiliser la syntaxe SQL pur parce que je puis le manque d'une vérification de la compilation)?
Nice. Toute version de ce code utilisant un 'SqlConnection'? J'espère que la référence externe ne sera pas un problème. – Wernight
Cela devrait fonctionner: nouveau serveur (new ServerConnection (sqlConnection)). – VladV
Je trouve cela très utile merci :) – daehaai