2012-09-13 33 views
0

我想根据数据库中的表生成插入的sql语句,所以编写一些代码来做到这一点,DataProvider是MySQL Connector/Net。如何知道列是否在mysql中自动递增

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。

回答

0

对于MySql Connector/Net,该步骤的dt中有一个“EXTRA”列。

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

如果列是auto_increment,dt.Rows [i] [“EXTRA”]的值是“自动增量”。