2
我想獲取表的所有列的默認值,以便我可以在數據輸入表單中顯示它們,有沒有一種方法可以使用ADO.NET來執行此操作?我知道我可以查詢information_schema數據庫的這個信息,我只是想知道是否有一個內置的方式來做到這一點在ADO.NET使用ADO.NET獲取列默認值
我想獲取表的所有列的默認值,以便我可以在數據輸入表單中顯示它們,有沒有一種方法可以使用ADO.NET來執行此操作?我知道我可以查詢information_schema數據庫的這個信息,我只是想知道是否有一個內置的方式來做到這一點在ADO.NET使用ADO.NET獲取列默認值
您可以使用DbConnection.GetSchema
獲取默認的列值:
DbConnection conn = SqlClientFactory.Instance.CreateConnection("server=.\\SQLEXPRESS;database=northwind;integrated security=true");
conn.Open();
DataTable schema;
try {
schema = conn.GetSchema("Columns", new string[4] { conn.Database, null, "products", null });
foreach (DataRow row in schema.Rows) {
Console.WriteLine("Name: {0}, Default: {1}", row["COLUMN_NAME"], row["COLUMN_DEFAULT"]);
}
} finally {
if (conn.State != ConnectionState.Closed)
conn.Close();
}
不,你將不得不查詢數據庫模式,或硬代碼你自己的價值。
你可以得到幾乎一切你想知道的有關使用FillSchema的表結構,但我沒有看到的默認值可用項目之間 - http://msdn.microsoft.com/en-us/library/229sz0y5.aspx – DOK 2010-09-10 19:42:01