回 帖 发 新 帖 刷新版面

主题:select 有错误 请各位高手修改下谢谢!

If 货物编号.Text <> "" Then
        sel.Adodc1.RecordSource = "select 仓库.编号,仓库.仓库名称,货物信息.最高限量,sum(select 库存数量 from 库存状况 where 仓库编号=仓库.编号 and 货物编号=" + 货物编号.Text + ") as 库存量,(货物信息.最高限量-库存量) as 剩余限量 from 仓库,货物信息 where 货物信息.编号=" + 货物编号.Text
    Else
        sel.Adodc1.RecordSource = "select 编号,仓库名称 from 仓库"
    End If

回复列表 (共5个回复)

沙发

[color=000000]and 货物编号=" + 货物编号.Text + ") as 库存量,(货物信息.最高限量-库存量) as 剩余限量 from 仓库,货物信息 where 货物信息.编号=" + 货物编号.Text


更改成

and 货物编号=[/color] [color=FF0000] [size=5]'[/size][/color] [color=000000]" + 货物编号.Text + " [color=FF0000][size=5]'[/size][/color] ) [color=000000]as 库存量,(货物信息.最高限量-库存量) as 剩余限量 from 仓库,货物信息 where 货物信息.编号= [color=FF0000][size=5]'[/size][/color]" + 货物编号.Text  + &  "[color=FF0000][size=5]'[/size][/color]"[/color][/color] 

板凳

这位朋友,还是不好使。谢谢你的热情帮助
提示"关键字select附近有语法错误"

3 楼

不知道你的错误在哪里,要不就控件名,字段名起英文的可能好点?

4 楼

我建议:
1、select虽然可以嵌套,但在不熟悉的时候,你还是先不要使用嵌套。先将内层生成一个记录。然后再对这个记录进行查询。
2、查询不要直接查询,先构造号查询字符串,然后在查询,可以避免变量和字符的混淆。
3、对多表联合查询的格式你要多留意。正确格式如下:
S$="select A.项目1,A.项目2,B.项目3,C.项目4 from 表1 A,表2 B,表3 C where A.编号 = " &货物编号.Text
其中表名和项目名称你根据自己的需要编写。

5 楼


where子句中使用变量作为查询条件时,要注意格式 例如该变量为text1.text,那么应该这样用"select [字段列表] from [tabel列表] where 字段一 ='" & text1.text & "'"  其中&要和变量隔开, 如果使用模糊查询,要特别注意空格 比如"select [字段列表] from [tabel列表] where 字段一  like '%" & text1.text & "' 和"select [字段列表] from [tabel列表] where 字段一 like '% " & text1.text & "'是不一样的。'%" 和 '% "打死都查不出来.还有,数据库里表名,字段名尽量不要使用中文,窗体,控件,按钮也不要使用中文,容易出问题。扯的远了

我来回复

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