Sql Uniqueidentifier与数字不兼容
我试图将SQLBAK文件中的头信息解析到一个表中,但是出现了以下错误 Msg 206,16级,状态2,第1行 操作数类型冲突:uniqueidentifier与numeric不兼容 Msg 3013,16级,状态1,第1行 还原文件列表正在异常终止 这是我写的脚本,但我不明白为什么会出现这个错误 声明@HeaderInfo2表Sql Uniqueidentifier与数字不兼容,sql,sql-server-2012,Sql,Sql Server 2012,我试图将SQLBAK文件中的头信息解析到一个表中,但是出现了以下错误 Msg 206,16级,状态2,第1行 操作数类型冲突:uniqueidentifier与numeric不兼容 Msg 3013,16级,状态1,第1行 还原文件列表正在异常终止 这是我写的脚本,但我不明白为什么会出现这个错误 声明@HeaderInfo2表 (LogicalName nvarchar(128), PhysicalName nvarchar(128), Type nvarchar(128)
(LogicalName nvarchar(128),
PhysicalName nvarchar(128),
Type nvarchar(128),
FileGroupName nvarchar(128),
Size numeric(25,0),
MaxSize numeric(25,0),
FileId int,
CreateLSN int,
DropLSN int,
UniqueId uniqueidentifier ,
ReadOnlyLSN int,
ReadWriteLSN int,
BackupSizeInBytes numeric(25,0),
SourceBlockSize numeric(25,0),
FileGroupId int,
LogGroupGUID numeric(25,0),
DifferentialBaseLSN numeric(25,0),
DifferentialBaseGUID numeric(25,0),
IsReadOnly int,
IsPresent int,
TDEThumbprint int
)
插入@HeaderInfo2 EXEC'仅还原文件列表
FROM DISK=NI:\DBTemp\database.bak
使用NOUNLOAD'时,您的数据类型不正确。可以找到适当的数据类型:
三次检查源列-顺序和数据类型。一个可疑的是名为DifferentingBaseGuid的列,它是数字的-正确吗?我不确定确切的数据类型应该是什么。有没有办法根据以下查询的输出确定哪些数据类型?仅从DISK=N'I:\DBTemp\database.bak'还原FILELISTONLY并加载
Column name Data type
LogicalName nvarchar(128)
PhysicalName nvarchar(260)
Type char(1)
FileGroupName nvarchar(128)
Size numeric(20,0)
MaxSize numeric(20,0)
FileID bigint
CreateLSN numeric(25,0)
DropLSN numeric(25,0)NULL
UniqueID uniqueidentifier
ReadOnlyLSN numeric(25,0) NULL
ReadWriteLSN numeric(25,0)NULL
BackupSizeInBytes bigint
SourceBlockSize int
FileGroupID int
LogGroupGUID uniqueidentifier NULL
DifferentialBaseLSN numeric(25,0)NULL
DifferentialBaseGUID uniqueidentifier
IsReadOnly bit
IsPresent bit
TDEThumbprint varbinary(32)