我正在使用MySql数据库,并且我在名为ID
的表中创建了一个字段,该字段设置为自动递增而不是null。但是,我收到的错误是:
错误:键不能为空。参数名称:key
我在datakeynames="ID"
中提供了GridView
。这有什么不对吗?
当我在查询点放置断点并直接将数据插入mysql
时,插入时没有任何问题。
这是我的GridView
声明:
<asp:GridView ID="grdUploadedFiles" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="7" DataKeyNames="ID" ..>
我的SQL声明:
INSERT into tbluploadedfilesdetail (FileType,FileName,FileExt,FilePath,WebUrl) VALUES (...)
它在myobjcon.open()语句中给出了这个错误
MySqlConnection objMyCon1 = new MySqlConnection();
objMyCon1.Open();
MySqlCommand cmd1 = new MySqlCommand(getSQL1, objMyCon1);
cmd1.ExecuteNonQuery();
objMyCon1.Close();
dbLoad();
答案 0 :(得分:0)
好的,所以我们终于到了可以看到一些代码的地方,所以请注意:
MySqlConnection objMyCon1 = new MySqlConnection();
objMyCon1.Open();
什么是objMyCon1应该打开?您没有向对象提供有关它应该做什么的任何信息。当然,这是一个MySqlConnection,但它需要知道数据库在连接之前的位置。
答案 1 :(得分:0)
您创建MySqlConnection objMyCon1 = new MySqlConnection();
并尝试打开,但您需要指定我认为的连接字符串(找到熟悉的here)。
答案 2 :(得分:-2)
首先,您已连接到数据库,因此您需要创建ConnectionString
,然后您的代码才能正常运行,
这意味着你在播出并试图接下不在你背后的降落伞。这对你有意义吗?