注册 登录
编程论坛 VB6论坛

请帮忙看看这个代码每一运行程序就没有响应了

pxinfo 发布于 2019-07-02 22:30, 1924 次点击
请老师帮我看看这个查询代码错了吗?怎么一回车查询程序就没有响应了。VB就退出了
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
  If KeyCode = 13 Then
      
        Adodc2.ConnectionString = Conn
     Adodc2.RecordSource = "select s.罪犯编号 AS 罪犯编号,s.档案号 AS 档案号,s.姓名 AS 姓名,t.余额 AS 账户余额,p.限购 AS 限额,p.等级 AS 购物等级,p.购物批次 AS 购物批次 from 四知 s,罪犯总账 t,限购表 p where  s.编号 = t.编号 And s.档案号 = p.档案号 And s.姓名 = p.姓名 And s.姓名 like +  '%" & Text1.Text & "'+'%' or s.编号 = t.编号 And  s.档案号=t.档案号 And s.档案号 = p.档案号 And s.姓名 = p.姓名 And s.姓名拼音 like + '" & Text1.Text & "'+'%' "
     Adodc2.Refresh
          Set DataGrid1.DataSource = Adodc2
          DataGrid1.Refresh
  DataGrid1.Columns(0).Width = 1500
  DataGrid1.Columns(1).Width = 800
  DataGrid1.Columns(2).Width = 1000
  DataGrid1.Columns(3).Width = 2500
 DataGrid1.Columns(4).Width = 1500
   DataGrid1.Columns(5).Width = 1500
    DataGrid1.Columns(6).Width = 1500
    'DataGrid1.Columns(7).Width = 1500
   ' DataGrid1.Columns(8).Width = 1500
   ' DataGrid1.Columns(9).Width = 1500
   ' DataGrid1.Columns(10).Width = 1500
       'DataGrid1.Columns(11).Width = 1500
         ' DataGrid1.Columns(12).Width = 1500
   
       Label2.Caption = "人数为 " & Adodc2.Recordset.RecordCount
  End If
End Sub
3 回复
#2
wufuzhang2019-07-07 19:34
s.罪犯编号的s是什么?
#3
风吹过b2019-07-07 23:16
回2楼,s是别名
--------------------------------------------
表的名字叫 s 吗?from 子句里的表不叫 s 啊。说是别名,少了 AS 关键字

SELECT column_name(s)
FROM table_name
AS alias_name
#4
wufuzhang2019-07-10 13:04
回复 楼主 pxinfo
可以把你的数据表发出来吗?不然没法调试。

或者
你先把select语句写简单一点,只查找一个表中的一个字段的内容,看能不能正常输出,
然后再慢慢复杂select语句,这段代码不多,应该很好查问题的。

回复 3楼 风吹过b
取别名可以省略as的
1