【问题标题】:Inserting string in FOR BIT DATA column in DB2在 DB2 的 FOR BIT DATA 列中插入字符串
【发布时间】:2013-04-23 07:28:53
【问题描述】:

当我尝试在 DB2 中的列中插入一个字符串值时,它被定义为 CHAR(15) FOR BIT DATA,我注意到它被转换为其他格式,可能是十六进制。

在检索数据时,我得到一个字节数组,并在尝试使用 System.Text.Encoding.ASCII.GetString 将其转换回 ASCII 时,我得到了一些垃圾字符串字符。

有人遇到过这个问题吗? 有什么解决办法吗?

提前致谢。

【问题讨论】:

    标签: db2 hex


    【解决方案1】:

    For Bit Data 防止客户端和服务器之间的代码页转换。这通常用于插入二进制数据,而不是字符串。

    请看这个论坛,很多案例都被提出并解决了:http://www.dbforums.com/db2/1663992-bit-data.html

    您最终可以对数据库页面进行强制转换(这取决于您的平台)

    CAST(c1 AS CHAR(n) FOR SBCS DATA)
    
    CAST (<forbitdataexpression> AS [VARCHAR|CHAR][(<n>)] FOR [SBCS|DBCS] DATA)
    

    参考文献

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多