SQL排序问题

xmzorro 2006-03-19 04:51:13
SQL排序问题
数据库名为DBASE.MDB
表名为TMP_A
内有字段:姓名,性别,工龄
欲按工龄用SQL排序后显示出来男同事的所有资料。
得到的结果是要存到数据库中,还是要怎么办?我在程序的其他地方还要用。

我是这样写的:
用ADO打开一数据库后,
Set db = OpenDatabase("D:\DBASE.mdb", False, False, "") '不要密码的数据库
Set Rsdata = db.OpenRecordset("TMP_A")
接下来的SQL要怎么加进去?
SELECT * FROM TMP_A WHERE 性别="男" ORDER BY 工龄
...全文
74 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
xmzorro 2006-03-19
问题解决!马上给分,谢谢!
回复
xmzorro 2006-03-19
马上试试,谢谢您们的回答!
回复
faysky2 2006-03-19
参考:
'用ado实现(把结果放在模块级记录集对象变量rs里)
'工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)


Dim cn As New Adodb.Connection
Dim rs As New Adodb.Recordset

Private Sub Form_Load()
cn.CursorLocation = adUseClient
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\DBASE.mdb;Jet OLEDB:DataBase password=;"
rs.Open "SELECT * FROM TMP_A WHERE 性别='男' ORDER BY 工龄", cn, adOpenDynamic, adLockOptimistic
End Sub


Private Sub Form_Unload(Cancel As Integer)
If rs.State <> adstateclose Then rs.Close
If cn.State <> adstateclose Then cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
回复
tztz520 2006-03-19
这样写:
dim sex as string
sex="男"
Set Rsdata = db.OpenRecordset("SELECT * FROM TMP_A WHERE 性别='"& sex &"' ORDER BY 工龄")
回复
xmzorro 2006-03-19
TO:fishmans(金脚指)、tztz520(午夜逛街)
排序后的资料要放在哪?

SELECT * FROM TMP_A WHERE 性别="男" ORDER BY 工龄
的前面要不要加点什么东西?提示说少CASE。
回复
tztz520 2006-03-19
用'号代替"号,也可以用一个变量传进去.

SELECT * FROM TMP_A WHERE 性别='男' ORDER BY 工龄
回复
fishmans 2006-03-19
Rsdata.filter="性别='男'"
rsdata.sort="工龄"
定义全局的rs,打开后不关闭它
在本程序的别的地方调用它就可以了
不过我看你这好像不是ADO的用法哦??DAO吧?
回复
xmzorro 2006-03-19
这个数据库是网络更新的,数据我不能存到它里面!
回复
相关推荐
发帖

1188

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2006-03-19 04:51
社区公告
暂无公告