我正在寻找一种方法将真正的字符串转换为SQL中的十六进制值.我正在寻找一些Informix友好的东西,但我显然更喜欢数据库中立的东西
这是我现在使用的选择:
SELECT SomeStringColumn from SomeTable
这是我想要使用的选择:来自SomeTable的SELECT hex(SomeStringColumn)
不幸的是没有什么是那么简单... Informix给了我那条消息: 字符到数字转换错误
任何的想法?
你可以使用Cast和fn_varbintohexstr吗?
SELECT master.dbo.fn_varbintohexstr(CAST(SomeStringColumn AS varbinary)) FROM SomeTable
我不确定你的数据库系统中是否有这个功能,它在MS-SQL中.
我只是在我的一个表上的SQL服务器MMC中尝试过它:
SELECT master.dbo.fn_varbintohexstr(CAST(Addr1 AS VARBINARY)) AS Expr1 FROM Customer
这按预期工作.可能我所知道的MS-SQL上的master.dbo.fn_varbintohexstr,可能类似于informix hex()函数,所以可能尝试:
SELECT hex(CAST(Addr1 AS VARBINARY)) AS Expr1 FROM Customer