Chinaunix
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
[打印本页]
作者:
lew
时间:
2003-02-24 16:22
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
我的程序使用了自定义数据类型:TUJH=char(14),table1的col1的类型是TUJH类型的,但是我在SQL语句中写select * from table1 where col1='AC200212210001'却出错,说这种数据类型不能用=,怎么办?不能用自定义数据类型做为查询条件吗?
我该怎么做啊!
好急啊!
作者:
lew
时间:
2003-02-24 20:32
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
没人帮忙啊?连过问一下的都没有
作者:
johnason
时间:
2003-02-25 09:15
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
可以但是你的写法有问题啊
作者:
lew
时间:
2003-02-25 16:08
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
老大,如果你知道就说吧,我也知道我的写法有问题啊!
(至少在db2中有问题,sql server中是没问题的。)
作者:
vlife
时间:
2003-02-25 16:39
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
改成:select * from table1 where char(col1)='AC200212210001'
或者:select * from table1 where col1=TUJH('AC200212210001')
db2中认为用户自定义类型是区别与任何一种数据库类型的数据类型,必须使用转化函数才能和其他数据类型进行比较。自定义类型定义后系统自动生成2个类型转化函数,具体叫什么怎么用不大清楚了,查查书上很简单的。
作者:
大连老K
时间:
2003-02-25 17:06
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
select * from table1 where col1=TUJH('AC200212210001')
这种方法我试过,好像不行
作者:
vlife
时间:
2003-02-26 15:37
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
原帖由 "大连老K" 发表:
select * from table1 where col1=TUJH('AC200212210001')
这种方法我试过,好像不行
我刚刚测试了一下:
db2 =>; create distinct type ttt as char with comparisons
DB20000I SQL 命令成功完成。
db2 =>; create table bbb(ccc ttt)
DB20000I SQL 命令成功完成。
db2 =>; insert into bbb values('1')
DB20000I SQL 命令成功完成。
db2 =>; select * from bbb
CCC
---
1
1 条记录已选择。
db2 =>; select * from bbb where ccc = '1'
SQL0401N 运算 "=" 的操作数的数据类型不兼容。 SQLSTATE=42818
db2 =>; select * from bbb where char(ccc) = '1'
CCC
---
1
1 条记录已选择。
db2 =>; select * from bbb where ccc = ttt('1')
CCC
---
1
1 条记录已选择。
作者:
大连老K
时间:
2003-02-26 16:34
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
谢谢,我再试试
作者:
大连老K
时间:
2003-02-26 16:57
标题:
怎样在查询语句中用自定义数据类型做为匹配条件?
我找到原因了
我用administrator身份登陆的,建数据类型的时候提示模式名字不能超过8位,于是我就选了nullid,结果就会出现上述的错误。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2