回 帖 发 新 帖 刷新版面

主题:[讨论]请看一下这句有什么错误

string f_lsh //定义变量为当前日期字符串
f_lsh="20061210"
char c_lsh
select count(*) into :c_lsh from Operation_info where o_lsh like char(:f_lsh)+'%';
messagebox("info",string(c_lsh))

变量声明都没有问题,语法也没有错误。
但在PB7.0中运行,结果为0。实际上,数据库中有符合条件的记录啊。
(我用的是ms_sql_2000)

回复列表 (共2个回复)

沙发

刚才做了一下修改,成下面这样子,就可以正确的统计出符合条件的记录数。但我想了解一下我的like子句是有什么问题?

select count(*)+1 into :c_lsh from Operation_info where left(o_lsh,8) = :f_lsh;
其中,O_lsh的字段内容为“20061210”把日期转化成一个字符串,用来判断当天已经生成的记录数有多少,然后好在新插入的记录上赋一个顺序加1的记录数。

板凳

用char去转string,不太合理吧?

我来回复

您尚未登录,请登录后再回复。点此登录或注册