在DB2中为位数据列插入字符串

在DB2中为位数据列插入字符串,db2,hex,Db2,Hex,当我尝试在DB2中的列中插入一个字符串值时,它被定义为位数据的字符(15),我注意到它被转换成其他格式,可能是十六进制 在检索数据时,我得到一个字节数组,在尝试使用System.Text.Encoding.ASCII.GetString将其转换回ASCII时,我得到一个包含一些垃圾字符的字符串 有人面临这个问题吗? 有决议吗 提前感谢。位数据阻止客户端和服务器之间的代码页转换。这通常用于插入二进制数据,而不是字符串 请看一看这个论坛,这里提出并解决了许多案例: 您最终可以转换到数据库页面(这取决

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

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

有人面临这个问题吗? 有决议吗


提前感谢。

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

请看一看这个论坛,这里提出并解决了许多案例:

您最终可以转换到数据库页面(这取决于您的平台)

CAST(c1作为字符(n)用于SBCS数据)
强制转换(作为[SBCS | DBCS]数据的[VARCHAR | CHAR][())
参考资料

CAST(c1 AS CHAR(n) FOR SBCS DATA)

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