MySQL MySQL中是否可以创建带空格名称的表格?

MySQL MySQL中是否可以创建带空格名称的表格?

在MySQL中,创建表格是常见的操作之一。但是有些时候,我们可能需要创建一个带有空格的表格名称。那么问题来了,MySQL是否支持创建带有空格的表格名称呢?

阅读更多:MySQL 教程

初步尝试

我们来尝试一下,在MySQL中创建一个名称带有空格的表格:

CREATE TABLE `test table` (
    `id` INT NOT NULL,
    `name` VARCHAR(50),
    PRIMARY KEY(`id`)
);

执行上述代码后,我们会发现,MySQL报了一个错误:

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 'table(
id INT NOT NULL,
name VARCHAR(50),
PRIMARY KEY(id)
)' at line 1

根据报错信息,我们可以发现错误是在“near ‘table”这个位置。这是因为MySQL不支持在表名中使用特殊字符,如表空格,减号等。

解决方法

那么怎样才能创建带空格名称的表格呢?我们可以使用下划线代替空格,来创建表格名称。如下代码所示:

CREATE TABLE `test_table` (
    `id` INT NOT NULL,
    `name` VARCHAR(50),
    PRIMARY KEY(`id`)
);

这里我们将“test table”改为了“test_table”,然后再次执行,创建表格成功!

另外,我们可以使用引号来包含表格名称,这样就能够在表格名称中使用空格。示例如下:

CREATE TABLE "test table" (
    `id` INT NOT NULL,
    `name` VARCHAR(50),
    PRIMARY KEY(`id`)
);

总结

MySQL不支持在表格名称中使用空格,但我们可以使用下划线代替空格来创建表格名称,或者使用引号将表格名称包含起来。这样就可以成功创建带空格名称的表格了。

附录代码

-- 创建表格,表格名称带下划线
CREATE TABLE `test_table` (
    `id` INT NOT NULL,
    `name` VARCHAR(50),
    PRIMARY KEY(`id`)
);

-- 创建表格,表格名称带引号
CREATE TABLE "test table" (
    `id` INT NOT NULL,
    `name` VARCHAR(50),
    PRIMARY KEY(`id`)
);

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程