在mysql表名中使用( - )破折号

Sha*_*won 23 mysql

我想要备份我的数据库时出错

A Database Error Occurred

Error Number: 1064

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 '-01-000001' at line 1

SELECT * FROM temp_01-01-000001

Filename: F:\xampp\htdocs\erp_zaara\system\database\DB_driver.php

Line Number: 330
Run Code Online (Sandbox Code Playgroud)

有没有办法用表名(temp_01-01-000001)解决这个问题.

Jha*_*nvi 42

您必须添加引号,因为您的表名包含数字.我认为以下查询将起作用.

SELECT * FROM `temp_01-01-000001`
Run Code Online (Sandbox Code Playgroud)


hir*_*ish 18

您可以编辑文件/system/database/drivers/mysql/mysql_utility.php的第132行

从:

$query = $this->db->query("SELECT * FROM $table");
Run Code Online (Sandbox Code Playgroud)

至:

$query = $this->db->query("SELECT * FROM `$table`");
Run Code Online (Sandbox Code Playgroud)