首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

sql语句如果带变量,怎么实现?(急等!)

2012-02-04 
sql语句如果带变量,如何实现?(急等!)我有一个文本框txtQi,一个单选钮optDesc(判断升降序),一个下拉组合框c

sql语句如果带变量,如何实现?(急等!)
我有一个文本框txtQi,一个单选钮optDesc(判断升降序),一个下拉组合框cboZiDuan,目的是根据这三个控件的不同组合,查询出不用的记录集。这是这样写的:
strQi   =   txtQi.Text
strZiDuan   =   cboZiDuan.Text
If   optDesc   Then
        strJiangXu   =   " "
Else
        strJiangXu   =   "   DESC "
End   If
sql   =   "SELECT   N2, "   &   strZiDuan   &   "FROM   Result   WHERE   Qi= ' "   &   strQi   &   " 'ORDER   BY   "   &   strZiDuan   &   strJiangXu
(N2是数据表中的一个字段)
根据这条语句来查询,没能实现,请大侠帮忙。先谢了!

[解决办法]
sql = "SELECT N2, " & strZiDuan & " FROM Result WHERE Qi= ' " & strQi & " ' ORDER BY " & strZiDuan & strJiangXu
[解决办法]
如果你完全按照我的方法写的,应该不会出现这个问题的,你看看下列的两句代码,第一句是错的,第二句是对的

sql = "SELECT N2, ' " & strZiDuan & " ' FROM Result WHERE Qi= ' " & strQi & " ' ORDER BY " & strZiDuan & strJiangXu

sql = "SELECT N2, " & strZiDuan & " FROM Result WHERE Qi= ' " & strQi & " ' ORDER BY " & strZiDuan & strJiangXu
[解决办法]
1.可能是你的strZiDuan变量在后来发生了变化,不是查询时赋给SQL语句的那个了,我也不同意楼上的做法,那样会降低代码的可读性,本人有个更好的办法,请如下修改这条语句:

sql = "SELECT N2, " & strZiDuan & " as ZiDuan FROM Result WHERE Qi= ' " & strQi & " ' ORDER BY " & strZiDuan & strJiangXu

然后再这样使用:
X=RST.Fields( "ZiDuan ")
或者X=RST!ZiDuan

热点排行