我想在数据库中插入一些记事本数据。这是代码
cmd = new SqlCommand(@"insert into planificari(idlocalitate, frecventa, datastart, datastop) values(@idlocalitate, @frecventa, @datastart, @datastop)", con);
cmd.Parameters.AddWithValue("idllocalitate", idlocalitate);
cmd.Parameters.AddWithValue("frecventa", "ocazional");
cmd.Parameters.AddWithValue("datastart", dt1);
cmd.Parameters.AddWithValue("datastop", dt2);
cmd.ExecuteNonQuery();
我得到了这个错误:>>必须声明标量变量“ @idlocalitate”。
我该如何解决?
答案 0 :(得分:3)
您有错字:
Function ModePageLeave
MessageBox MB_YESNO "Installer is now going to uninstall existing software and reinstall software. Database files will be removed. Please confirm to proceed!" IDYES true IDNO false
true:
call silentUninst
false:
System::Call 'USER32::PostMessage(i$HWNDPARENT,i0x408,i-1,i0)'
#Abort
FunctionEnd
答案 1 :(得分:1)
无论何时向SQLCommand添加值,都必须为值加上前缀:
cmd.Parameters.AddWithValue("@idlocalitate", idlocalitate);
要插入的其他值也一样。
另外,正如@Panagiotis Kanavos指出的那样,使用AddWithValue
而不是Add("@idlocalitate", your datatype, #).Value = idlocalitate
方法是一种不好的做法。