代码之家  ›  专栏  ›  技术社区  ›  adam0101

如何将C字节数组转换为要粘贴到SQL脚本中的二进制字符串?[复制品]

  •  0
  • adam0101  · 技术社区  · 5 年前

    只是要明确一点,我并没有试图直接从C_插入到SQL Server中。

    我想将C字节数组转换为二进制字符串,以便将其粘贴到SQL脚本中,如下所示:

    insert into Files (FileId, FileData) values (1, 0x010203040506)
    

    我该怎么做?

    1 回复  |  直到 5 年前
        1
  •  1
  •   Phil Ross Matt Johnson-Pint    5 年前

    Binary constants 在SQL Server中,“具有前缀0x并且是十六进制数字的字符串”。

    您可以使用 "x2" format string 将结果与 String.Join() :

    var bytes = new byte[] {1, 2, 3, 4, 5, 6};
    var binaryString = "0x" + string.Join("", bytes.Select(b => b.ToString("x2")));