在 mySQL 中创建名称中带有空格的表

Posted

技术标签:

【中文标题】在 mySQL 中创建名称中带有空格的表【英文标题】:Create a table with a space in the name in mySQL 【发布时间】:2013-08-12 10:21:58 【问题描述】:

我想在 mysql 中创建一个名为“123 Product”的表,开头是数字,中间有一个空格。我可以使用 phpmyAdmin 执行此操作,但我想使用 php 制作此表。但是,不幸的是,我无法做到这一点。我尝试搜索该主题,但找不到可以解决问题的准确答案。

【问题讨论】:

我可以知道表名中有空格的原因吗? 长篇大论@Mr.Alien,我必须展示和编辑……长篇大论 如果你在 phpmyadmin 中创建一个表,你可以复制相应的 php 代码 你用反引号转义了这个名字吗? @TobiasKun ,不知道什么是反引号? 【参考方案1】:

您可以简单地试试这个:用反引号 (`) 将表名括起来

$sql = "
CREATE TABLE `123 Product` 
(
`product_id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, 
`product_name` VARCHAR(255) NOT NULL
 ) 
ENGINE = InnoDB;
";

【讨论】:

【参考方案2】:

另一种解决方案,当另一个不起作用时

$query = "SELECT * 
            From \`base\x20hojas\`";

配置测试:

PHP 版本 5.5.9-1 Ubuntu 4.11

Linux 版本 2.6.32-32-pve(gcc 版本 4.7.2 (Debian 4.7.2-5) )

Description: Ubuntu 14.04.1 LTS
Release:     14.04
Codename:    trusty
Apache 版本 2.4.7 (Ubuntu) MySQL 5.1.30-社区; 5.1.30-社区;

【讨论】:

以上是关于在 mySQL 中创建名称中带有空格的表的主要内容,如果未能解决你的问题,请参考以下文章

在mysql中创建两个用外键链接的表,插入、删除和更新

在mysql中选择一个名称中带有空格的数据库

如何在mysql程序中创建临时表并生成不同的名称?

反应,渲染名称中带有空格的图像的问题

我可以一次在程序中创建具有不同名称的表吗[关闭]

如何在 python 中导入名称中带有空格的文件?