>又来麻烦大家了,有以下程序:</P>
>void __fastcall TForm1::N14Click(TObject *Sender)2 t0 a" E. s. l8 ]& U- y
>这个主要是要求使用程序者输入它所在的费率区,输入到strScore中,第二段程序:</P>; V7 q' G) q; H+ _) _+ \$ t
> ADOQuery1->Close();
>将得到的值代入程序,但是编译没有问题,使用了的时候显示“无效的数字”,初步判断是全局变量的问题,现修改头文件</P>
>//---------------------------------------------------------------------------</P> t+ z5 v$ t/ r T( X
>#include <vcl.h>
>#include "Unit3.h"
>结果还是老样子,请大家帮忙看一下,谢谢!</P>( i5 x4 ]) K/ x2 D4 u6 ]
>ADOQuery1->SQL->Add("SELECT * FROM jxprm.group_info WHERE group_city='strScore'");这句错了!应该改成下面两句!</P><
>AnsiString str="SELECT * FROM jxprm.group_info WHERE group_city='"+strScore+"'";</P><
>ADOQuery1->SQL->Add(str);</P>
>我试了一下,编译没有报错,点击以后也没有什么问题,但是DBGrid里面没有显示,怀疑这个数据没有传进去,查看了一下,group_id的数据类型是number</P>
>你这几句里面没有用到group_id呀,如果SQL里面用的字段是number型的,则在Where后面的判断语句需要去掉两边的单引号!</P>
>不好意思是我打错了,应该是group_city</P>, `: F+ k7 |$ i- y, H* |
>按照你说的改了以后,编译正常,执行时报以下错误</P>1 t. c& [! f. x, j
>
roject Project2.exe raised exception class EOleException with message 'ORA-00921:未预期的sql命令结尾.Process stopped .Use step or Run to continue.</P>
>可能是你的Orecal数据库不支持标准SQL语句的问题,好像最后的'应该改成/',你自己查查它的帮助就知道了!</P>
>还是不行哦,我已经作了以下修改</P>
>1.去掉了strScore,nScore在下面程序的定义</P>0 q6 C/ J+ c7 t2 M6 @+ x' F
>2.增加了一个label观察strScore的值</P>
>3.修改sql语句为</P>$ E3 w3 `% o9 l
>ADOQuery1->SQL->ADD("SELECT * FROM JXPRM.GROUP_INFO);</P>' ]5 \+ h% R0 j4 J* F j8 C/ S8 D
>ADOQuery1->SQL->ADD("WHERE GROUP_CITY="+'nScroe'");</P>4 d" V' {( v! A
>但是依然报原来的错误,观察Label,输入的数据确实进了参数</P>
| 欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) | Powered by Discuz! X2.5 |