tempad
ReadyGo!技术成就梦想 >>服务器 >> 提示语法错误出现在全部的代码行之外,请各位帮忙看看这到底是怎么回事情!

提示语法错误出现在全部的代码行之外,请各位帮忙看看这到底是怎么回事情!

ReadyGo!技术成就梦想 网络搜索 efish 2008-1-14 1:24:19

提示语法错误出现在全部的代码行之外,请各位帮忙看看这到底是怎么回事情!

楼主pobosskey(有房有车(租的房+自行车))2002-03-13 12:22:56 在 PowerBuilder / 非技术版 提问

在一个查询功能的语句是这么写的,   但是编译的时候却说有语法错误出现在所有的代码行之外!但是代码都没有那么多行,请教大家知道这是怎么回事情吗?  
  //定义参数:查询条件综合结果  
  string   lookforcondition  
  //定义参数:要查询的列  
  string   lookforItem1,lookforItem2,lookforItem3  
  //定义参数:查询的符号  
  string   lookforHow1,lookforHow2,lookforHow3  
  //定义参数:要查询的内容  
  string   lookforWhat1,lookforwhat2,lookforwhat3  
  //定义参数:不同查询条件组合操作符号  
  string   lookforoperator1,lookforoperator2  
  //查询符号的选择  
  lookforHow1=ddlb_4.text  
  lookforHow2=ddlb_5.text  
  lookforHow3=ddlb_6.text  
   
  //操作符号1的选择  
  if   ddlb_7.text="与"   then    
  lookforoperator1="and"  
  elseif   ddlb_7.text="   或"   then  
  lookforoperator1="or"  
  elseif   ddlb_7.text="   非"   then  
  lookforoperator1="not"  
  end   if  
   
  //操作符号2的选择  
  if   ddlb_8.text="与"   then    
  lookforoperator2="and"  
  elseif   ddlb_8.text="   或"   then  
  lookforoperator2="or"  
  elseif   ddlb_8.text="   非"   then  
  lookforoperator2="not"  
  end   if  
   
  //查询子段1和查询内容1的选择  
  if   ddlb_1.text="员工号"   then  
  lookforitem1="emp_no"  
        lookforwhat1=sle_1.text  
  elseif   ddlb_1.text="姓名"   then  
  lookforitem1="emp_name"  
        lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="部门号"   then  
  lookforitem1="dept_id"  
  lookforwhat1=sle_1.text  
  elseif   ddlb_1.text="性别"   then  
  lookforitem1="emp_genger"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="出生日期"   then  
  lookforitem1="emp_birthday"  
  lookforwhat1=sle_1.text  
  elseif   ddlb_1.text="籍贯"   then  
  lookforitem1="emp_hometown"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="国籍"   then  
  lookforitem1="emp_conntry"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="民族"   then  
  lookforitem1="emp_nation"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="身份证号"   then  
  lookforitem1="emp_id"  
  lookforwhat1=sle_1.text  
  elseif   ddlb_1.text="婚姻状况"   then  
  lookforitem1="emp_marriage"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="健康状况"   then  
  lookforitem1="emp_health"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="政治面貌"   then  
  lookforitem1="emp_zzmm"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="家庭地址"   then  
  lookforitem1="emp_homedress"  
  lookforwhat1=""+sle_1.text+""  
  elseif   ddlb_1.text="联系电话"   then  
  lookforitem1="emp_teleno"  
  lookforwhat1=sle_1.text  
  elseif   ddlb_1.text="职务代号"   then  
  lookforitem1="job_id"  
  lookforwhat1=""+sle_1.text+""  
  end   if  
   
  //查询子段2和查询内容2的选择  
    if   ddlb_2.text="员工号"   then  
  lookforitem2="emp_no"  
        lookforwhat2=sle_2.text  
  elseif   ddlb_2.text="姓名"   then  
  lookforitem2="emp_name"  
        lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="部门号"   then  
  lookforitem2="dept_id"  
  lookforwhat2=sle_2.text  
  elseif   ddlb_2.text="性别"   then  
  lookforitem2="emp_genger"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="出生日期"   then  
  lookforitem2="emp_birthday"  
  lookforwhat2=sle_2.text  
  elseif   ddlb_2.text="籍贯"   then  
  lookforitem2="emp_hometown"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="国籍"   then  
  lookforitem2="emp_conntry"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="民族"   then  
  lookforitem2="emp_nation"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="身份证号"   then  
  lookforitem2="emp_id"  
  lookforwhat2=sle_2.text  
  elseif   ddlb_2.text="婚姻状况"   then  
  lookforitem2="emp_marriage"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="健康状况"   then  
  lookforitem2="emp_health"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="政治面貌"   then  
  lookforitem2="emp_zzmm"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="家庭地址"   then  
  lookforitem2="emp_homedress"  
  lookforwhat2=""+sle_2.text+""  
  elseif   ddlb_2.text="联系电话"   then  
  lookforitem2="emp_teleno"  
  lookforwhat2=sle_2.text  
  elseif   ddlb_2.text="职务代号"   then  
  lookforitem2="job_id"  
  lookforwhat2=""+sle_2.text+""  
  end   if  
  //查询子段3和查询内容3的选择  
  if   ddlb_3.text="员工号"   then  
  lookforitem3="emp_no"  
        lookforwhat3=sle_3.text  
  elseif   ddlb_3.text="姓名"   then  
  lookforitem3="emp_name"  
        lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="部门号"   then  
  lookforitem3="dept_id"  
  lookforwhat3=sle_3.text  
  elseif   ddlb_3.text="性别"   then  
  lookforitem3="emp_genger"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="出生日期"   then  
  lookforitem3="emp_birthday"  
  lookforwhat3=sle_3.text  
  elseif   ddlb_3.text="籍贯"   then  
  lookforitem3="emp_hometown"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="国籍"   then  
  lookforitem3="emp_conntry"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="民族"   then  
  lookforitem3="emp_nation"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="身份证号"   then  
  lookforitem3="emp_id"  
  lookforwhat3=sle_3.text  
  elseif   ddlb_3.text="婚姻状况"   then  
  lookforitem3="emp_marriage"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="健康状况"   then  
  lookforitem3="emp_health"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="政治面貌"   then  
  lookforitem3="emp_zzmm"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="家庭住址"   then  
  lookforitem3="emp_homedress"  
  lookforwhat3=""+sle_3.text+""  
  elseif   ddlb_3.text="联系电话"   then  
  lookforitem3="emp_teleno"  
  lookforwhat3=sle_3.text  
  elseif   ddlb_3.text="职务代号"   then  
  lookforitem3="job_id"  
  lookforwhat3=""+sle_3.text+""  
  end   if  
       
       
    //查询条件的综合  
    if   ddlb_1.text=""or   ddlb_4.text=""   then  
  //用户没有输入一个查询条件  
  elseif   ddlb_2.text=""   or   ddlb_5.text=""   then  
  //用户输入一个查询条件  
  lookforcondition=lookforitem1+lookforhow1+""+lookforwhat1+""  
  elseif   ddlb_3.text=""   or   ddlb_6.text=""   then  
  //用户输入两个查询条件  
  lookforcondition=lookforitem1+lookforhow1+""+lookforwhat1+""+lookforoperator1+""+lookforitem2+lookforhow2+""+lookforwhat2+""  
  else  
  //用户输入三个查询条件  
  lookforcondition=lookforitem1+lookforhow1+""+lookforwhat1+""+lookforoperator1+""+lookforitem2+lookforhow2+""+lookforwhat2+""+lookforoperator2+"   "+lookforitem3+lookforhow3+lookforwhat3+""  
  //设置过滤器  
  dw_lookfor_basic.setfilter(lookforcondition)  
  //过滤数据窗口  
  filter(dw_lookfor_basic)  
  //取得符合条件的记录  
  dw_lookfor_basic.retrieve() 问题点数:0、回复次数:9Top

1 楼zhanwei(@_@,初学.Net)回复于 2002-03-13 12:28:21 得分 0

不同条件之间加上括号再试一试!Top

2 楼zhanwei(@_@,初学.Net)回复于 2002-03-13 12:29:04 得分 0

如   (...)and((...   )   or   (...   ))Top

3 楼liuyxit(苦涩的咖啡)回复于 2002-03-13 12:52:42 得分 0

请检查"//查询条件的综合"后的查询条件,  
  注意在lookforoperator1的前后加带空格的"   "。  
  同时可加入语句:  
  messagebox("SQL语句",string(lookforcondition))  
  来检查询组成的sql语句的正确性。  
   
  上述错误可能是你生成的sql语句有错,此时好象是在编译才会显示!    
  Top

4 楼fangss()回复于 2002-03-13 13:01:03 得分 0

可能是if   else某处写错了,眼睛都看花了!  
  如果不是的话,是不是数据库没连接上?  
  或是你修改一下代码重新保存一下也许就好了呢,pb总这样Top

5 楼Whyin(决战java)回复于 2002-03-13 13:06:53 得分 0

应该是:  
      if     then  
      else    
      end   if  
   
    的问题,缺少end   if,所以,你要先写清楚,然后检查Top

6 楼gungod2000(work,work and work)回复于 2002-03-13 13:14:05 得分 0

少一个END   IFTop

7 楼sorrow_arrow(想你一分,就恨你一分)回复于 2002-03-13 14:15:56 得分 0

还有呀,有些地方你不要用IF语句,CHOOSE   CASE   语句不是很好嘛!刚好符合你的条件。Top

8 楼programbcb(datawindow)回复于 2002-03-14 00:30:02 得分 0

哇,你太累了,你不如用数据窗口的DDLB风格吧,取一个显示值,实际得到是另一个值就行了,根本不用这么多程序的,而且如果增加了一个列,你还要改程序,烦!Top

9 楼honesthou(沙鸥)回复于 2002-03-14 10:30:57 得分 0

最后那个条件判断的end   if到哪里去了?Top

责任编辑: efish 参与评论 查找更多:
相关文章
能不能先拿ACCESS建立数据库然后再将数据导入到SQL 中 能不能先拿ACCESS建立数据库然后再将数据导入到SQL 中
既然应用程序的查询通常是用SQL动态实现,为什么还需… 既然应用程序的查询通常是用SQL动态实现,为什么还需要建立后台数据库的视图对象?
关于套打支票 关于套打支票
vc++.net里写完原代码后怎么编译它? vc++.net里写完原代码后怎么编译它?
关于dropdowlist的默认值、选取,请大家帮忙????… 关于dropdowlist的默认值、选取,请大家帮忙???????????????????
怎样检测下载速度? 怎样检测下载速度?
高兴每人20分!!!! 高兴每人20分!!!!
用直接写口的方法操作串口的问题? 用直接写口的方法操作串口的问题?
关于注册表的问题,高手请进! 关于注册表的问题,高手请进!
tomcat4中怎样设置classpath? tomcat4中怎样设置classpath?
2秒记住本站域名

玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的ReadyGo.com.cn

分类导航
ReadyGo!技术成就梦想