由于我们不能使用保留字作为表名,因此"create table table"在 MySQL 中是否可以工作?
mysqlmysqli database更新于 2025/10/21 18:20:17
首先让我们看一个使用"create table table"创建表的情况。将出现错误 −
mysql> create table table( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100) );
这将产生以下输出,即错误 −
ERROR 1064 (42000): 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的 'table( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100) )' 附近使用的正确语法
如上所示,单词"table"是保留关键字,我们不能将其用作表的名称。因此,要解决此问题,您需要使用反引号将表名括起来。
让我们再次创建表,并使用反引号将表名设置为"table" −
mysql> create table `table`( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100) ); Query OK, 0 rows affected (0.81 sec)
使用 insert 命令在表中插入一些记录 −
mysql> insert into `table`(FirstName) values('Chris');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('Robert');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('David');
Query OK, 1 row affected (0.15 sec)
mysql> insert into `table`(FirstName) values('Mike');
Query OK, 1 row affected (0.13 sec)
使用 select 语句显示表中的所有记录 −
mysql> select *from `table`;
这将产生以下输出 −
+----+-----------+ | Id | FirstName | +----+-----------+ | 1 | Chris | | 2 | Robert | | 3 | David | | 4 | Mike | +----+-----------+ 4 rows in set (0.00 sec)
相关文章
有用资源
mysql 参考教程 - 该教程包含有关 mysql 的更多信息:https://www.cainiaomax.com/mysql/

