Sql Uniqueidentifier与数字不兼容

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)

我试图将SQLBAK文件中的头信息解析到一个表中,但是出现了以下错误

Msg 206,16级,状态2,第1行 操作数类型冲突:uniqueidentifier与numeric不兼容 Msg 3013,16级,状态1,第1行 还原文件列表正在异常终止

这是我写的脚本,但我不明白为什么会出现这个错误

声明@HeaderInfo2表

(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)