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