问题描述
|
我正在使用MysqL数据库,并且已在表
ID
中创建了一个字段,该字段设置为自动递增且不为null。但是,我收到以下错误消息:
错误:密钥不能为空。参数名称:键
我在GridView
中给了datakeynames=\"ID\"
。这有什么问题吗?
当我在查询点放置一个断点并将数据直接插入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();
解决方法
首先,您已连接到数据库,因此需要创建一个
ConnectionString
,然后您的代码才能正常工作,
这意味着您正在广播中,并试图向后背降落伞降落。这对您有意义吗?
, 好的,所以我们终于到了可以看到一些代码的地方,所以请注意以下几点:
MySqlConnection objMyCon1 = new MySqlConnection();
objMyCon1.Open();
objMyCon1应该打开什么?您尚未向对象提供有关其应做的任何信息。当然,它是一个MySqlConnection,但是在连接之前它需要知道数据库的位置。
, 您创建MySqlConnection objMyCon1 = new MySqlConnection();
并尝试打开,但是需要指定我认为的连接字符串(在此处找到一些熟悉的东西)。