【问题标题】:how to know if a column is auto-increment in mysql如何知道一列是否在mysql中自动递增
【发布时间】:2012-09-13 07:33:48
【问题描述】:

我想根据数据库中的表生成insert sql语句,所以写了一些代码来做到这一点,DataProvider是MySQL Connector/Net。

MysqlConnection conn = new MysqlConnection("...");
DataTable dt = conn.GetSchema("Tables");

//foreach table

DataTable dt = conn.GetSchema("Columns",column_res);

//generate prepared statement sql by the columns.

当表中有 auto_increment 列时,代码不能工作,我必须手动编辑它。有谁知道如何知道一列是 auto_increment 吗?这样我就可以自动获取所有需要的sql了。

【问题讨论】:

    标签: .net ado.net mysql-connector information-schema


    【解决方案1】:

    对于 MySql 连接器/网络,步骤的 dt 中有一个“EXTRA”列。

    DataTable dt = conn.GetSchema("Columns",column_res);
    

    如果列是auto_increment,则dt.Rows[i]["EXTRA"]的值为“auto_increment”。

    【讨论】:

      猜你喜欢
      • 2013-04-10
      • 2011-09-25
      • 2016-03-31
      • 1970-01-01
      • 1970-01-01
      • 2014-10-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-26
      相关资源
      最近更新 更多