你好这一切似乎都是我的问题我在mysql中有一个表,并且在尝试插入时正在制作ac#app我得到了你的SQL语法有错误; 检查与您的MySQL服务器版本相对应的手册,以便在第1行(我的companyVal)的"OIL COMPANY"附近使用正确的语法.它将插入一个值和所有其他值的默认值,但我添加它错误的第二个值
string ConnectionString2 = ConfigurationSettings.AppSettings["ConnectionString2"];
MySqlConnection connection2;
connection2 = new MySqlConnection(ConnectionString2);
connection2.Open();
MySqlCommand command = new MySqlCommand("INSERT INTO spt_proposal (lab_Prop_Id,customer_Name) VALUE (" + a + "," + companyVal + ")", connection2);
command.ExecuteNonQuery();
connection2.Close();
Run Code Online (Sandbox Code Playgroud)
黑雁
不要这样做开始:
// I split the line
MySqlCommand command =
new MySqlCommand("INSERT INTO spt_proposal lab_Prop_Id,customer_Name) "
"VALUE (" + a + "," + companyVal + ")", connection2);
Run Code Online (Sandbox Code Playgroud)
这可以让您了解SQL注入攻击,并通过混合代码和数据使代码更难理解,并导致转换的潜在问题(特别是日期和时间).
而是使用参数化SQL语句将值提供给数据库.
虽然您可以添加引号,但绝对不应该这样做.不良数据(无论是故意恶意还是非恶意数据a,b都可能是一个严重的安全风险.只是不要这样做.
您还需要更改VALUE为VALUES,但我只是在转到参数化SQL 后才这样做.哦,并使用using语句自动处理命令和连接,因此如果抛出异常,您不会泄漏资源.
| 归档时间: |
|
| 查看次数: |
5050 次 |
| 最近记录: |