如何在IBMDB2iSeries中获取ASCII/EBCDIC字符
我想在IBMDB2iSeries中获取字符引号(如何在IBMDB2iSeries中获取ASCII/EBCDIC字符,db2,ibm-midrange,Db2,Ibm Midrange,我想在IBMDB2iSeries中获取字符引号(”)和双引号(“)ASCII/EBCDIC。 老实说,我不知道iSeries到底支持什么-ASCII或EBCDIC。我正在尝试两者,但运气不好 示例:获取(A)字符 SELECT * FROM MYTABLE WHERE CUSTOMER_NAME LIKE '%' + CHR(065) + '%' SELECT * FROM MYTABLE WHERE CUSTOMER_NAME LIKE '%' + CHR(41) + '%' SELE
”
)和双引号(“
)ASCII/EBCDIC。
老实说,我不知道iSeries到底支持什么-ASCII或EBCDIC。我正在尝试两者,但运气不好
示例:获取(A)字符
SELECT * FROM MYTABLE WHERE CUSTOMER_NAME LIKE '%' + CHR(065) + '%'
SELECT * FROM MYTABLE WHERE CUSTOMER_NAME LIKE '%' + CHR(41) + '%'
SELECT * FROM MYTABLE WHERE CUSTOMER_NAME LIKE '%' + CHR(193) + '%'
给我这个错误:
SQL0204-找不到*LIBL type*N中的CHR
下面是一些关于SQL的基本信息,可能会有所帮助 这一脚注大致概括了这一点: “字符转换在需要时是自动的,并且在成功时对应用程序是透明的。因此,当语句执行中涉及的所有字符串都以相同的方式表示时,转换知识是不必要的。因此,对于许多读者来说,字符转换可能无关紧要。” 该函数是在V6R1中添加的
编码到特定字符集不是一种好的做法,但是您可以使用API在HLL中执行字符转换。以下是一些有关SQL的基本信息,可能会有所帮助 这一脚注大致概括了这一点: “字符转换在需要时是自动的,并且在成功时对应用程序是透明的。因此,当语句执行中涉及的所有字符串都以相同的方式表示时,转换知识是不必要的。因此,对于许多读者来说,字符转换可能无关紧要。” 该函数是在V6R1中添加的
编码到特定字符集不是一种好的做法,但是您可以使用API在HLL中执行字符转换。如果您只是想在字符串中添加单引号(撇号),并用单引号分隔,则需要将其加倍,如下图所示。'%''%。如果您想连接,请使用
|
(在unix中,称为2个“管道”字符),而不是+
(plus)。在示例中不需要十六进制,但如果需要,则可以使用x'C1'
(EBCDIC中的“A”)
iSeries通常在大多数情况下使用EBCDIC。有一个char()
函数
联机文档的链接是针对Linux、Unix和Windows上的DB2的
- 例如,请参见
- 例如,请参见
- 例如,请参见
'%''%
。如果要连接,请使用|
(在unix中,称为2个“管道”字符),而不是+
(加号)。在您的示例中,您不需要十六进制,但如果需要,则可以使用x'C1'
(EBCDIC中的“A”)
iSeries通常在大多数情况下使用EBCDIC。有一个char()
函数
联机文档的链接是针对Linux、Unix和Windows上的DB2的
- 例如,请参见
- 例如,请参见
- 例如,请参见