我有名字叫shreyanshdb的db],也就是说它有一个右方括号。 我想在SQL服务器中使用SQL查询执行此数据库的备份。 但它给我抛出了一个例外:Transact-sql 异常。
这是命令:备份数据库 [shreyanshdb]] 到磁盘 = 'c:\DB'
我真的不知道如何逃脱右方括号...
我认为你可以为此使用sp_executesql。将数据库名称作为参数传递的位置。
https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-executesql-transact-sql
BACKUP DATABASE [shreyanshdb]]] to disk = 'c:DB'
您可以从QUOTENAME
函数文档中看到应该如何引用内容。对于矩形括号,右括号应加倍。
最好不要在 SQL Server 中的数据库名称、表名、列名或任何其他对象名中使用这些括号、空格或任何不规则字符。