angularjs增删改查数据_再探 数据库增删改查

前文已经介绍过数据库的增、删、改操作,这三个操作命令简单而且和MySQL等传统数据库并无二致,因此并未着重介绍。

然使用频率极高的查询操作,会稍有不同(展示方式稍有不同,MySQL直接在后台终端展示,Access直接在内存留存,需要载体存放),特别是对于第一次使用数据库的用户来讲,可能会比较抽象,故而将其单独成文。

在使用Access数据库之前,我们先看一下MySQL查询数据时的返回情况:

fc36ff054687eae1371fd4493aea79c5.png

MySQL数据库是一个交互性的界面,而VBA没有交互性的环境,因此查询出的数据只能暂存内存中,称为查询集,然后读取查询集,将数据读取到某一文件中即可。

具体表示如下:

 Sub 查询数据()    Call 连接数据库    Dim sql As String    sql = "Select * from 学生" '从学生表中取数,*代表所有字段    '与INSERT、ALTER、UPDATE等不同,SELECT直接从数据库中取数然后返回记录集(查询集),RecordSet对象。    Set rs = con.Execute(sql)     '记录字段名称    Dim i As Integer    For i = 0 To rs.Fields.Count - 1        Sheet1.Cells(1, i + 1) = rs.Fields(i).Name    Next i    '存储数据    Sheet1.Range("A2").CopyFromRecordset rs    'Excel单元格自动调整,以适应单元格内容大小    Sheet1.Columns.AutoFit      Debug.Print "查询数据成功"    Call 释放变量空间End Sub

公共过程

Tips:用于代码解耦。

 Option Explicit    Dim con As New ADODB.Connection    Dim rs As ADODB.RecordsetSub 连接数据库()    con.Open "Provider=microsoft.ace.oledb.12.0; data source=" & _    ThisWorkbook.Path & "\学生管理.accdb"End SubSub 操作数据库()    Call 连接数据库    '数据库取数操作,详见下一标题    Call 清除工作表数据    Call 释放变量空间End SubSub 释放变量空间()    con.Close    Set con = Nothing    rs.Close    Set rs = NothingEnd SubSub 清除工作表数据()    ActiveWorkbook.Sheets(1).Cells.ClearEnd Sub

查询语句

cd93dbf5d8b1e5790eab2b2fe3f4ba3d.png

简单查询

SELECT 字段列表 FROM 表名

条件查询

SELECT 字段列表 FROM 表名 WHERE 条件

分组查询

SELECT 字段,聚合函数(字段列表) FROM 表名 Group By 字段

排序查询

SELECT 字段列表 FROM 表名 Order By 字段

跨表查询
内连接查询

WHERE -> SELECT t1.字段, t2.字段 FROM table1 as t1, table2 as t2 where t1.字段=t2.字段

INNER JOIN -> SELECT t1.字段, t2.字段 FROM table1 as t1 INNER JOIN table2 as t2 ON t1.字段=t2.字段

外连接查询
左连接 查询

SELECT t1.字段, t2.字段 FROM table1 as t1 LEFT JOIN table2 as t2 ON t1.字段=t2.字段

右连接查询

SELECT t1.字段, t2.字段 FROM table1 as t1 RIGHT JOIN table2 as t2 ON t1.字段=t2.字段

全连接查询

VBA并不支持,但是MySQL等常规数据库支持,就是笛卡尔积,可自行百度。

 Sub 插入数据()        Call 连接数据库    Dim sql As String    '在此处输入"SQL查询语句"'        con.Execute (sql)    Debug.Print "插入数据成功"        Call 释放变量空间End Sub

后面,我们就针对增删改查进行实例化操作。

对未来最大的慷慨是将一切都献给现在。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值