我正在尝试使用Pro * C来访问TimesTen数据库。在TimesTen中创建表的代码是
create table testtable(id number(4) not null primary key, ename char(10));
我使用Pro * C从此表中获取数据。当我使用这个SQL:
select * from testtable where ename like 'wxd'
我没有结果。但是当我使用它时:
select * from testtable where ename like 'wxd '
我得到了正确的结果。我必须在场地内填充足够的空间。还有其他方法可以得到正确的结果吗?
答案 0 :(得分:0)
这不是Pro * C的问题,而是您为列选择的数据类型的特征。 CHAR(10)
表示该字段总是10个字符宽,即使您插入的值更短。数据库将使用空格填充一个短值,这就是为什么必须在查询中添加额外空格的原因。
如果您需要可变长度列,请改用VARCHAR(10)
。
答案 1 :(得分:0)
您还可以使用以下适用于CHAR和VARCHAR列的内容:
从testtable中选择*,其中ename类似于' wxd%'
类似SQL的条件通常有一个通配符。