0

エラー メッセージ:

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");
4

1 に答える 1

4

desc予約済みのキーワードであるフィールド名として使用しています。クエリでバッククォートを使用します。

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

または、フィールドの名前を変更します。

于 2012-05-27T09:19:18.727 に答える