如何使用 SQL 查询更改表名?
Posted
技术标签:
【中文标题】如何使用 SQL 查询更改表名?【英文标题】:How to change a table name using an SQL query? 【发布时间】:2009-05-20 08:19:58 【问题描述】:如何使用查询语句更改表名?
我使用了以下语法,但在 SQL Server 2005 中找不到 rename 关键字。
Alter table Stu_Table rename to Stu_Table_10
【问题讨论】:
ALTER TABLE TABLE_NAME 重命名为 NEW_TABLE_NAME 仅适用于 Oracle DB。 【参考方案1】:使用 sp_rename:
EXEC sp_rename 'Stu_Table', 'Stu_Table_10'
您可以在 MSDN 上找到有关此过程的文档。
如果需要包含模式名称,则只能包含在第一个参数中(即,不能用于将表从一个模式移动到另一个模式)。因此,例如,这是有效的:
EXEC sp_rename 'myschema.Stu_Table', 'Stu_Table_10'
【讨论】:
请记住,对于 sp_rename,它只是第一个参数可以采用 Schema 名称,第二个参数必须没有 Schema 名称。如 EXEC sp_rename 'dbo.Stu_Table', 'Stu_Table_10' Henrik 的评论非常重要,这可能是答案的一部分?让我免于头痛。【参考方案2】:在mysql
:-
RENAME TABLE `Stu Table` TO `Stu Table_10`
【讨论】:
问题是关于 SQL Server,你的答案是 MySQL。 我投了赞成票,因为这个问题在 google 中也被 mysql 引用。 用 Mysql 为我工作 +1 用于 mysql 答案,因为 Google 也将我带到了这里。请记住,即使 OP 勾选了对他们有用的答案,其他人也可能会发现其他有用的答案,例如我自己。【参考方案3】:在 Postgress SQL 中:
Alter table student rename to student_details;
【讨论】:
【参考方案4】:请在 SQL Server 2005 上使用它:
sp_rename old_table_name , new_table_name
它会给你:
警告:更改对象名称的任何部分都可能会破坏脚本和 存储过程。
但是你的表名会改变。
【讨论】:
【参考方案5】:在 MySQL 中:
重命名表 template_function
为 business_function
;
【讨论】:
【参考方案6】:ALTER TABLE table_name 重命名为 new_table_name; 也适用于 MySQL。
或者:
将表 table_name
重命名为 new_table_name
;
【讨论】:
【参考方案7】:最新 MySQL 版本的语法已更改。
所以尝试重命名命令在表名中不带单引号。
RENAME TABLE old_name_of_table TO new_name_of_table;
【讨论】:
【参考方案8】:RENAME TABLE old_table_name TO new_table_name;
【讨论】:
【参考方案9】:执行这个命令
sp_rename 'Employee','EData'
【讨论】:
【参考方案10】:重命名表名:
RENAME TABLE old_tableName TO new_tableName;
例如:
RENAME TABLE company_name TO company_master;
【讨论】:
您能否指出描述此内容的 SQL Server 2005 文档?以上是关于如何使用 SQL 查询更改表名?的主要内容,如果未能解决你的问题,请参考以下文章