Sql server SQL Server 2005大容量插入二进制类型
我有以下格式的表格: smallint, binary(10), smallint, smallint, varbinary(max) smallint,二进制(10),smallint,smallint,varbinary(最大值) 我还有一个csv文件,由我们的一个进程从表中的数据生成,其中二进制数据作为十六进制数据导出。Sql server SQL Server 2005大容量插入二进制类型,sql-server,sql-server-2005,bulkinsert,Sql Server,Sql Server 2005,Bulkinsert,我有以下格式的表格: smallint, binary(10), smallint, smallint, varbinary(max) smallint,二进制(10),smallint,smallint,varbinary(最大值) 我还有一个csv文件,由我们的一个进程从表中的数据生成,其中二进制数据作为十六进制数据导出。 我尝试在语句中生成INSERT,但速度非常慢。 我厌倦了大容量插入,但它失败了,我怀疑这是因为二进制数据 有人知道如何使用大容量插入(或类似的东西)来插入包含二进制数据的
我尝试在语句中生成INSERT,但速度非常慢。
我厌倦了大容量插入,但它失败了,我怀疑这是因为二进制数据 有人知道如何使用大容量插入(或类似的东西)来插入包含二进制数据的大量数据吗 数据示例如下: 1,0x00000000000000000BB8,0,142,0x434F4E534E554D424552202020202020040006000600202000000000202000000000000000008000422020202020202020202020202020202020000000000000000000000000000000000000202000000020000000000000000000000000000000000000000000000000000000000200020000000000000004000000E09304006B8016000600FFFFFFFF0B00010007004633303030002E81FFFF1C00FFFFFFFF04001E00 1,0x00000000000000000BB8,0142,0x434F4E534E554D42552202020020400060006000020000000000202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FF04001E00
谢谢。我打赌问题在于0x434F4E。。。被视为要插入的实际字节(0x307834334463445),而不是十六进制扩展。('0'=0x30,'x'=0x78,'4'=0x34等等)将发生截断,因为十六进制的每个值有两个字符,所以它试图插入一个长度为所需长度两倍的字符串 如果您查看了大容量插入的选项,但没有找到告诉它将十六进制解释为二进制的方法,我建议使用SSIS。我没有从SSI批量加载二进制值的实际经验,但毫无疑问,它可以做到这一点,而且速度会很快
我想总是有可能输出二进制值的实际字节,而不是它们的十六进制表示形式,但是如果使用分隔符,就会遇到问题,因为分隔符可能是二进制值中的字节之一。这正是混合文本和二进制数据的问题。您可以通过使用固定长度的列导入来实现这一点,该导入具有定义列及其数据类型的大容量插入的特殊扩展语法。使用大容量插入时,数据文件和从BCP生成的格式文件工作正常。这对我来说已经足够好了。谢谢所有帮助我的人。