对DATA & DBGRID绑定数据排序完成
Private Sub cmdSort_Click()
Dim db As Database 'db 数据库
Dim strSqlNew As String
Dim strSqlDel As String
Dim strSqlRestore As String
Dim strSqLDrop As String
Set db = OpenDatabase(App.Path & "\mlc.mdb")
Dim strFDN1 As String
Dim strFDN2 As String
Dim strFDN3 As String
Dim strFDN As String
Dim cmbSelectzd1 As ComboBox
Dim cmbSelectzd2 As ComboBox
Dim cmbSelectzd3 As ComboBox
Set cmbSelectzd1 = cmbZD1
Set cmbSelectzd2 = cmbZD2
Set cmbSelectzd3 = cmbZD3
If optAsc1.Value = False Then
strFDN1 = cmbSelectzd1.List(cmbSelectzd1.ListIndex) & " Desc"
Else
strFDN1 = cmbSelectzd1.List(cmbSelectzd1.ListIndex) & " ASC"
End If
If optAsc2.Value = False Then
strFDN2 = cmbSelectzd2.List(cmbSelectzd2.ListIndex) & " Desc"
Else
strFDN2 = cmbSelectzd2.List(cmbSelectzd2.ListIndex) & " ASC"
End If
If optAsc3.Value = False Then
strFDN3 = cmbSelectzd3.List(cmbSelectzd3.ListIndex) & " Desc"
Else
strFDN3 = cmbSelectzd3.List(cmbSelectzd3.ListIndex) & " ASC"
End If
Select Case cmbSelectzd1.List(cmbSelectzd1.ListIndex)
Case ""
strFDN1 = ""
Select Case cmbSelectzd2.List(cmbSelectzd2.ListIndex)
Case ""
strFDN2 = ""
Select Case cmbSelectzd3.List(cmbSelectzd3.ListIndex)
Case ""
strFDN3 = ""
MsgBox "选择参数有误或未进行选择,请重新选择!", 64, "错误的选择"
Exit Sub
Case Is <> ""
strFDN = strFDN3
End Select
Case Is <> ""
Select Case cmbSelectzd3.List(cmbSelectzd3.ListIndex)
Case ""
strFDN = strFDN2
Case Is <> ""
strFDN = strFDN2 + ", " + strFDN3
End Select
End Select
Case Is <> ""
Select Case cmbSelectzd2.List(cmbSelectzd2.ListIndex)
Case ""
strFDN2 = ""
Select Case cmbSelectzd3.List(cmbSelectzd3.ListIndex)
Case ""
strFDN3 = ""
strFDN = strFDN1
Case Is <> ""
strFDN = strFDN1 + ", " + strFDN3
End Select
Case Is <> ""
Select Case cmbSelectzd3.List(cmbSelectzd3.ListIndex)
Case ""
strFDN = strFDN1 + ", " + strFDN2
Case Is <> ""
strFDN = strFDN1 + "," + strFDN2 + ", " + strFDN3
End Select
End Select
End Select
If cmbSelectzd1.List(cmbSelectzd1.ListIndex) = cmbSelectzd2.List(cmbSelectzd2.ListIndex) Or cmbSelectzd2.List(cmbSelectzd2.ListIndex) = cmbSelectzd3.List(cmbSelectzd3.ListIndex) Or cmbSelectzd1.List(cmbSelectzd1.ListIndex) = cmbSelectzd3.List(cmbSelectzd3.ListIndex) Then
MsgBox "选择参数有误,请重新选择!", 64, "错误的选择"
Exit Sub
Else
End If
strSqlNew = "select * into " & "new" & RCName & " from " & RCName & " order by " & strFDN
db.Execute strSqlNew
'MsgBox "完成临时表建立", 64, "Temp table created!"
strSqlDel = "delete * from " & RCName
db.Execute strSqlDel
'MsgBox "完成原表记录删除", 64, "delete records in old table!!!"
strSqlRestore = "insert into " & RCName & " select * from new" & RCName
db.Execute strSqlRestore
'MsgBox "完成临时表数据回写至原表", 64, "Trans data!!!"
strSqLDrop = "drop table new" & RCName
db.Execute strSqLDrop
'MsgBox "完成临时表删除", 64, "Delete temp table"
db.Close
frmTableShow.Dataconnect.Refresh
frmTableShow.DBGrid1.Refresh
Unload Me
End Sub
相关推荐
在Delphi中使用DBGrid处理多条记录
摘要:Delphi源码,数据库应用,DBGrid 在Delphi中使用DBGrid处理多条记录,程序界面如上图所示,需要连接数据库才能显示记录,测试前请连接Database文件夹内的数据库文件。
Delphi数据库访问组件IBDAC实战:Firebird/InterBase原生连接与性能优化
数据库访问组件是Delphi开发中的关键环节,传统中间层如BDE、ADO、dbExpress在性能、兼容性和部署方面存在诸多痛点。原生连接技术通过直接调用数据库客户端API,绕过冗余中间层,能显著提升数据交互效率与稳定性。IBDAC作为专为InterBase和Firebird设计的组件库,全面支持Delphi 6至13,具备轻量部署、低学习成本和持续更新等优势,广泛应用于存量系统改造、ERP进销存、移动端数据同步等场景。本文围绕IBDAC v9.0.0的安装部署、核心组件使用、事务控制、字符集处理、大数据量
DevExpress VCL 26.1.3安装实战与Delphi桌面开发效率提升指南
在Delphi桌面开发中,组件库的选择直接影响企业级管理系统的构建效率。DevExpress VCL作为商业级VCL控件集,通过封装复杂表格、报表、Ribbon界面等底层逻辑,让开发者从重复造轮子中解放出来,专注于业务实现。其安装配置看似简单,实则涉及IDE版本匹配、环境清理、设计期包注册等关键环节。本文从组件库的技术价值出发,梳理DevExpress VCL的完整安装流程与验证方法,剖析cxGrid、dxRibbon、cxTreeList等核心控件的功能定位,并延伸至FireMonkey跨平台、PDA扫码
VB数据库编程DBGRID32.OCX控件
VB数据库编程DBGRID32.OCX控件 企业版的VB默认安装没有注册这个控件,需要自己手动注册,注册后便可以在VB工具箱右键部件选择使用,
Delphi ADO查询示例 DBGrid显示数据.rar
Delphi ADO查询示例 DBGrid显示数据.rar-


非技术类
