MySQL表名中能不能存在下划线?
在表名中不能存在下划线。如果您仍然想创建一个带有下划线的新表,请使用反引号而不是单引号将其括起来。
但是,首先让我们尝试在带有下划线的表名周围设置引号。以下是一个示例 –
mysql> create table 'Demo_Table725'(
ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName varchar(100),
ClientAge int,
ClientCountryName varchar(100),
isMarried boolean
);
这将产生以下输出,即一个错误,因为我们没有使用反引号 –
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near ''Demo_Table725'
(
ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName v' at line 1
现在,我们将解决上面的问题,并使用反引号创建相同的表 –
mysql> create table `Demo_Table725`(
ClientId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
ClientName varchar(100),
ClientAge int,
ClientCountryName varchar(100),
isMarried boolean
);
Query OK, 0 rows affected (0.58 sec)
使用insert命令在表中插入一些记录 –
mysql> insert into `Demo_Table725`(ClientName,ClientAge,ClientCountryName,isMarried) values('John',34,'US',true);
Query OK, 1 row affected (0.40 sec)
mysql> insert into `Demo_Table725`(ClientName,ClientAge,ClientCountryName,isMarried) values('Chris',28,'UK',false);
Query OK, 1 row affected (0.25 sec)
使用select语句从表中显示所有记录 –
mysql> select *from `Demo_Table725`;
这将产生以下输出 –
+----------+------------+-----------+-------------------+-----------+
| ClientId | ClientName | ClientAge | ClientCountryName | isMarried |
+----------+------------+-----------+-------------------+-----------+
| 1 | John | 34 | US | 1 |
| 2 | Chris | 28 | UK | 0 |
+----------+------------+-----------+-------------------+-----------+
2 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程