从c#在mysql中创建表

本文关键字:创建 mysql | 更新日期: 2023-09-27 17:57:43

我想创建表,但我的代码不正确。请告诉我——我错在哪里了。非常感谢。

MySqlCommand Create_table= new MySqlCommand("CREATE TABLE 123 (id INT NOT NULL AUTO_INCREMENT,action VARCHAR(15) NOT NULL, PRIMARY KEY (id)) COLLATE='utf8_general_ci' ENGINE=InnoDB;",con);
Create_table.ExecuteNonQuery();

从c#在mysql中创建表

问题在于表123的名称。它只包含数字,并且来自MySql文档

标识符可以以数字开头,但除非引用,否则可能不包含仅由数字组成。

您需要将表名称包含在反引号中,或者以字母开头

MySqlCommand Create_table= new MySqlCommand(@"
        CREATE TABLE `123` 
        (id INT NOT NULL AUTO_INCREMENT,
        action VARCHAR(15) NOT NULL, 
        PRIMARY KEY (id)) COLLATE='utf8_general_ci' ENGINE=InnoDB;", conn);
Create_table.ExecuteNonQuery();        

我建议更改该名称以避免将来出现类似的问题