【问题标题】:Get column default values with ADO.NET使用 ADO.NET 获取列默认值
【发布时间】:2010-09-10 19:30:52
【问题描述】:

我想获取表中所有列的默认值,以便可以在数据输入表单中显示它们,有没有办法使用 ADO.NET 来做到这一点?我知道我可以在 information_schema 数据库中查询此信息,我只是想知道 ADO.NET 中是否有内置方法可以做到这一点

【问题讨论】:

标签: .net sql ado.net


【解决方案1】:

您可以使用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();
}

【讨论】:

    【解决方案2】:

    不,您必须查询数据库架构,或者自己对值进行硬编码。

    【讨论】:

      猜你喜欢
      • 2020-07-01
      • 2019-07-07
      • 2011-12-30
      • 1970-01-01
      • 1970-01-01
      • 2011-06-03
      • 1970-01-01
      • 1970-01-01
      • 2011-08-15
      相关资源
      最近更新 更多