我有一个免费的桌子My_Table1。My_Table1 IA 具有以下字段
Field-Name -> sl_no Integer - Width 4
因此,当我通过 OleDb 插入时,从 c# 中,它给出了这样的错误
"Data Type Mismatch"
我的 OleDbCommand 是
int a1 = 3;
OleDbCommand OleCmd1 = new System.Data.OleDb.OleDbCommand("Insert into My_Table1 values('"+a1+"')", OleCon1)
感谢您的帮助
插入语句
正在插入字符值'a1'
。 这不能存储在整数字段中。 如果a1
是代码中的一个变量,那么也许你正在寻找这个:
System.Data.OleDb.OleDbCommand("Insert into My_Table1 values("+a1.ToString()+")", OleCon1)
从"最佳实践"的角度来看,最好使用参数化查询来养成避免SQL注入攻击问题的习惯。 对于整数值,上面的语句可能没问题,但通常不太习惯使用简单串联构建 SQL 语句。