我有一个名为“Database”的MSSQL数据库。现在,当我尝试使用下面显示的查询重命名它时,
USE master;
GO
ALTER DATABASE Database
Modify Name = Database01
GO
它给了我这个错误信息:
Msg 102,Level 15,State 1,Line 1'Database'附近的语法不正确。
但是这个查询适用于其他数据库。我做错了什么?
答案 0 :(得分:7)
如果您“引用”表名,它应该有效。默认引号字符是方括号[],所以:
USE master;
GO
ALTER DATABASE [Database]
Modify Name = Database01
GO
答案 1 :(得分:1)
您可以使用系统内置存储过程 - sp_renamedb'oldDBName','NewDBName'
答案 2 :(得分:0)
当你必须为表名使用保留关键字时,数据库名,列名总是放[](大括号)
,例如
select * from [Table]
代替select * from table
select [column] from [table]
代替select column from table
但将保留关键字作为对象的名称是非常糟糕的主意。