簡體   English   中英

使用C#將點符號插入到MySQL錯誤

[英]Insert dot symbol with C# to mySQL error

我面臨一個奇怪的問題,我對MySQL數據庫執行INSERT查詢

                string site = txtSite.Text;
                string query = "INSERT INTO `site`(`id`, `url`, `status`) VALUES (NULL,?url, 1)";

                MySqlCommand cmd = new MySqlCommand(query);
                cmd.Parameters.AddWithValue("?url", site);
                //cmd.Parameters.AddWithValue("?url", "abc.com");
                cmd.Connection = (MySqlConnection)connection;
                cmd.Prepare();

                cmd.ExecuteNonQuery();

1.如果我在文本框txtSite中輸入“ abc.com”,然后運行代碼,則提示錯誤

命令執行期間遇到致命錯誤。

  1. 但是,如果我沒有獲得txtSite的值,則將“ abc.com”直接放在?url上,該cmd運行正常,而不是錯誤。

你有什么主意嗎?

我相信這是一個語法問題。 以下代碼可能適合您。

string site = txtSite.Text;
string query = "INSERT INTO `site`(`id`, `url`, `status`) VALUES (NULL, @url, 1)";

MySqlClientconn conn = new MySqlConnection();
conn.Open();

MySqlCommand cmd = new MySqlCommand();
cmd.Connection = conn;
cmd.CommandText = query;
cmd.Prepare();

cmd.Parameters.AddWithValue("@url", site);

cmd.ExecuteNonQuery();

我假設您正在使用MySQL Connector / Net庫。 完成后,不要忘記關閉連接並處理命令和連接。

參考

有關使用MySQL Connector / Net庫的更多信息,請參見以下內容: https : //dev.mysql.com/doc/connector-net/en/connector-net-programming-prepared-preparing.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM