回 帖 发 新 帖 刷新版面

主题:求助!!!关于Delphi中SQL语句的convert函数的问题!

请问各位大侠,在Delphi中如何使用SQL的convert函数啊!怎么我用了之后老是提示没有定义此函数啊!!
以下是我写的SQL语句:
SQL.Text:='Select CourseScore.*,StuName,DepartName,ProfName,ClassName,CourseName'+
      ' from CourseScore,Student,Class,Course,Department,Professional,StuCourse '+
      'where CourseScore.StuNum=Student.StuNum and Course.CourseNum=CourseSCore.CourseNum '+
      'and Class.ClassNum=StuCourse.ClassNum and StuCourse.CourseNum=CourseScore.CourseNum'+
      ' and Professional.ProfNum=Class.ProfNum and Professional.DepartNum=Department.DepartNum '+
'and Convert(int,CourseScore.StuNum)<'+Str_Max+' and Convert(int,CourseScore.StuNum)>'+Str_Min;

请问一下是怎么回事啊,是不是Delphi中用不了convert函数啊!!

回复列表 (共4个回复)

沙发


[em7][em7][em7]
怎么没人帮忙啊!!!HELP!!

板凳

这样写SQL语句太累,又容量出错。在企业管理器中写好SQL语句并执行正常后再把弄到程序中来就不容易出错了。convert函数是没有问题的。

3 楼


谢谢dodolon 
但是我试了一下用这么简单的也是提示convert未定义啊,这是怎么回事?谢谢!!
with ADOQuery1 do
begin
  SQL.Text:='Select * from department where convert(int,DepartNum)>1';
  open;
end;

4 楼

Str_Max是string类型
而你的Convert(int,CourseScore.StuNum)是int类型
不同类型是不同进行比较的 得先转换成同一类型如
'convert(varchar(1000),Convert(int,CourseScore.StuNum))>'+Str_Max+'????? '
这样应该可以了!
你再试试!

我来回复

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