我需要生成一个SQL插入脚本来将数据从一个SQL Server复制到另一个SQL Server。 因此,使用.net,我正在读取给定SQL Server表的数据并将其写入新的文本文件,然后可以执行该文件以便将此数据插入到其他数据库中。
其中一列是VARBINARY(MAX) 我应该如何将获得的byte []转换为脚本的文本,以便它仍然可以插入到其他数据库中?
SSMS将此数据显示为十六进制字符串。这是使用的格式吗? 我可以使用以下
获得相同的格式BitConverter.ToString(<MyByteArray>).Replace("-", "")
但又如何插入呢? 我试过了
CONVERT(VARBINARY(MAX), "0xMyHexString")
这是一个插入,但是该值与源表中的值不同。
答案 0 :(得分:14)
原来你可以直接插入十六进制字符串,无需转换任何东西:
INSERT TableName (VarBinColumnName)
VALUES (0xMyHexString)
请不要问为什么我没有直接测试...
答案 1 :(得分:0)