我执行此行SQL:
ALTER TABLE dinnertable RENAME TO dinnerTable;
在信息控制台中:
[SQL] ALTER TABLE dinnertable RENAME to dinnerTable;
受影响的行:0
时间:0.001s
但是在navicat中,你看到下面,表名没有改变:
答案 0 :(得分:0)
sp_rename 'old_table_name','new_table_name';
答案 1 :(得分:0)
我注意到你已经刷新了navicat。所以这个问题可能是mysql表名称区分大小写的设置问题。请查看此mysql案例的 my.cnf 或 my.ini 文件。更改名为 lower_case_tables_name 的参数。如果您找不到,则需要添加
lower_case_tables_name = 0
下面的[mysqld] 然后重启mysql案例。
答案 2 :(得分:0)
请尝试在重命名声明中添加双引号。
ALTER TABLE "dinnertable" RENAME TO "dinnerTable";
不带引号的标识符不区分大小写。
(请注意这是针对Oracle的,不确定mysql)
Oracle将它们解释为大写。带引号的标识符区分大小写。
通过将名称括在双引号中,可以将以下名称赋予同一名称空间中的不同对象:
"employees"
"Employees"
"EMPLOYEES"
有关详细信息,请参阅link。