无法找到MySQL + .net的错误

时间:2012-05-27 09:16:35

标签: .net mysql

错误消息:

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第1行'desc)VALUES('223','hhh')附近使用正确的语法

如果我从查询中删除'desc',那么它的代码正在运行。所以我相信代码/查询没有任何问题。

这就是我设计前端和MySQL的方式

txtTitle是一个单行文本框,txtDesc是一个多行文本框

我将标题设为VARCHAR(45),将desc设为VARCHAR(1000) 这是我的代码:

string connectionString = @"server=max-5.com.my;userid=user; password=123456;database=myDatabase";


MySqlConnection conn = new MySqlConnection(connectionString);

MySqlCommand cmd = conn.CreateCommand();



cmd.Parameters.Add("title", MySqlDbType.VarChar);

cmd.Parameters["title"].Value = this.txtTitle.Text;



cmd.Parameters.Add("desc", MySqlDbType.VarChar);

cmd.Parameters["desc"].Value = Server.HtmlEncode(this.txtDesc.Text);



cmd.CommandText = "INSERT INTO application(title, desc) VALUES(@title, @desc)";



conn.Open();

int numberOfRows = cmd.ExecuteNonQuery();

conn.Close();

Response.Redirect("Page2.aspx");

1 个答案:

答案 0 :(得分:4)

您使用desc作为字段名称,这是一个保留关键字。在查询中使用反引号:

cmd.CommandText = "INSERT INTO application(title, `desc`) VALUES(@title, @desc)";

或者,重命名该字段。