You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

SQL Server中.NET Framework Byte[]类型列手动输入数据格式咨询

解决SQL Server中Byte[]对应列的手动输入格式问题

嘿,这个问题我之前帮同事处理过!在SQL Server里,对应.NET Framework Byte[]的列通常是varbinary(或固定长度的binary)类型,手动输入的时候不能直接写数组格式(比如[1,2,3]),得用SQL Server识别的二进制数据格式,具体操作分两种场景:

  • 在SSMS的表数据编辑界面手动输入
    直接在目标单元格里输入0x开头的十六进制字符串就行。比如你要输入字节数组{0x01, 0x02, 0x03},就填0x010203;如果是空的字节数组,输入0x即可(要是列允许为空,也可以填NULL)。

  • 用SQL语句插入/更新数据
    写法和上面一致,把二进制数据以0x前缀的十六进制串形式传入,示例代码如下:

    -- 插入示例
    INSERT INTO YourTable (ByteColumn)
    VALUES (0x00FFAABB); -- 对应.NET Byte[] {0x00, 0xFF, 0xAA, 0xBB}
    
    -- 更新示例
    UPDATE YourTable
    SET ByteColumn = 0x123456
    WHERE Id = 1;
    

你之前遇到的报错,就是因为输入了SQL Server无法识别的格式(比如普通数组语法或字符串),换成0x前缀的十六进制串就能正常识别啦。

内容的提问来源于stack exchange,提问作者eDonkey

火山引擎 最新活动