![](/img/trans.png)
[英]SQL Server 'Operand type clash: int is incompatible with date' error
[英]SQL Server error "Operand type clash: varchar is incompatible with int "
我已經制作了以下用於備份數據庫的存儲過程
CREATE PROCEDURE [dbo].[usp_databasebackup]
@DatabaseName NVARCHAR(200),
@Path NVARCHAR(500)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sqlQuery VARCHAR(5000)
BEGIN
SET @sqlQuery = ' BACKUP DATABASE ['+@DatabaseName+'] TO DISK = N''D:\@DatabaseName.bak''
WITH COPY_ONLY, NOFORMAT, NOINIT, NAME = N''@DatabaseName-Full Database Backup'',
SKIP, NOREWIND, NOUNLOAD, STATS =''10'' '
EXEC (@sqlQuery)
END
END
GO
當我使用數據庫名稱和路徑作為參數執行存儲過程時,出現此錯誤:
操作數類型沖突:varchar 與 int 不兼容
您可以在不使用動態 SQL 的情況下備份數據庫。
你只需要像這樣使用備份命令
backup database @DatabaseName
to disk=@DiskName
with name=@Name,
compression, format, init, skip, norewind, nounload, stats=10
@DatabaseName
應該是sysname
在備份命令中使用變量之前,您需要准備/連接名稱和路徑 - 即, @DiskName
將是帶有“.bak”后綴的path
和filename
的連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.