C# 无法弄清楚我的 MySql 命令字符串出了什么问题(语法错误)
本文关键字:问题 什么 语法 错误 字符串 弄清楚 我的 命令 MySql | 更新日期: 2023-09-27 18:32:43
我正在使用MySql.Data库来访问我的MySql数据库,并且在其中一个表中输入行时遇到了一些困难。有人可以检查我在这里提供的内容并指出问题所在吗?
以下是我的 MySql 数据库中的列名:
ID
Full Name
Date of Birth
City
State/Province/Region
Zip Code
Country
Phone Number
Email Address
Ticket Number
Registration Time
这是我的命令字符串(当我使用字符串时,它变得完整。使用函数中的参数作为值的格式):
string commandString = "INSERT INTO Participants (ID,Full_Name,Date_of_Birth,City,State/Province/Region,Zip_Code,Country,Phone_Number,Email_Address,Ticket_Number,Registration_Time) VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}');";
以下是异常消息:
您的 SQL 语法有误;请查看手册 对应于您的MySQL服务器版本,以便使用正确的语法 近 "州/省/地区",Zip_Code,国家,Phone_Number,Email_Address,Ticket_Numbe" 在 1 号线
提前感谢!
尝试通过用
反引号 (') 将 State/Province/Region
列的名称括起来来对其进行转义。有关更多信息,请参阅此处。
此外,您正在尝试在不调用 String.Format
的情况下存储格式化字符串。
尝试这样的事情:
string commandString = String.Format("INSERT INTO Participants (ID,Full_Name,Date_of_Birth,City,`State/Province/Region`,Zip_Code,Country,Phone_Number,Email_Address,Ticket_Number,Registration_Time) VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}');",
value0, value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);
只需将value0
、value1
等变量替换为您的值即可。