我創建了一個winform應用程序,並使用ado.net訪問mysql數據庫。但是我遇到了一個奇怪的問題。ADO.NET插入Mysql,所有數據爲空
我的數據表中創建腳本:
create table using_user {
`id` int(11) NOT NULL auto_increment,
'dx_ip_addr' default NULL,
'scard_type' default NULL,
....
}
我的C#代碼:
MySqlConnection conn = new MySqlConnection();
conn.ConnectionString = "Server=localhost; Port=9999; Uid=root; Pwd=ecsc; Database=zhz-netbar-jk;"
conn.Open();
MySqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "insert into using_user (dx_ip_addr, scard_type,...)values(@dx_ip_addr, @scard_type,...)";
cmd.Parameters.Add(new MySqlParameter("@dx_ip_addr", "5000230001"));
cmd.Parameters.Add(new MySqlParameter("@scard_type", "1"));
...
cmd.ExecuteNonQuery();
conn.Close();
執行此操作後,主鍵 '身份證' 產生,但其他領域是NULL。我該如何解決這個問題?
請註明數據類型爲剩下的兩列..dx_ip_addr,scard_type –
您的代碼存在各種問題。您在數據庫端缺少數據類型。你也錯過了C#端的數據類型(在cmd.Parameters.Add這一行。另外,我假設這不是生產代碼,但是你應該在你所有的Sql上使用「using」指令對象以確保它們正確關閉 –