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 工龄
...全文
117 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
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
  • 打赏
  • 举报
回复
这个数据库是网络更新的,数据我不能存到它里面!

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧