新手,有打印问题请教,急!(50分)

  • 主题发起人 主题发起人 logicmall
  • 开始时间 开始时间
L

logicmall

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个功能按钮是打印一张课程表,打印窗体事先做好了(与其他几个按钮共用,
其他的都正常),内容是通过sql实现的。
但一运行就会出现Debug Exception Notification提示框
General SQL Error.Token unknow-line1,char56 Time
但检查了sql代码,没发现错误,怎么回事啊?
这是按钮的代码
procedure TF_main.B_printClick(Sender: TObject);
begin

With MainFormdo

begin

i_header.Text:='课表:'+F_login.i_user.Text;
Q_print_contents.Close;
Q_print_contents.SQL.Clear;
Q_print_contents.SQL.Add('SELECT COURSE.ID, COURSE.NAME, COURSE.CLASSROOM, COURSE.TIME');
Q_print_contents.SQL.Add('FROM COURSE, COURSE_SELECT');
Q_print_contents.SQL.Add('WHERE COURSE_SELECT.STUDENT="'+F_login.i_user.Text+'"');
Q_print_contents.SQL.Add('AND COURSE_SELECT.COURSE=COURSE.ID;');
Q_print_contents.Open;
StringGrid1.RowCount:=4;
StringGrid1.Cells[0,0]:='课程编号';
StringGrid1.Cells[1,0]:='10';
StringGrid1.Cells[0,1]:='课程名称';
StringGrid1.Cells[1,1]:='30';
StringGrid1.Cells[0,2]:='上课地点';
StringGrid1.Cells[1,2]:='50';
StringGrid1.Cells[0,3]:='上课时间';
StringGrid1.Cells[1,3]:='50';
ShowModal
end;

end;

 
Q_print_contents.SQL.Add('WHERE COURSE_SELECT.STUDENT="'+F_login.i_user.Text+'"');
Q_print_contents.SQL.Add('AND COURSE_SELECT.COURSE=COURSE.ID;');
改为:
Q_print_contents.SQL.Add('WHERE (COURSE_SELECT.STUDENT='''+F_login.i_user.Text+''')');
Q_print_contents.SQL.Add('AND (COURSE_SELECT.COURSE=COURSE.ID)');
 
没有用还是这样。
 
把后三句sql字符串前都加个空格
 
还是没用,是不是其他方面的错误啊,sql好象没错啊
 
你这是什么数据库啊,COURSE_SELECT.STUDENT是什么类型啊? 能不能用双引号啊?
要不改成Q_print_contents.SQL.Add('WHERE COURSE_SELECT.STUDENT='''+F_login.i_user.Text+'''');
 
不过我的第一个提示你也应该再修改一下
 
char型,还是没用
 
跟踪一下,打开前是什么语句,
或者,检查一下是否你的源码中有全角字符什么的吧。
 
你的qq?
什么时候在线?
 
后退
顶部