VBA SQL訪問資料庫基本框架

2021-09-29 04:55:07 字數 1812 閱讀 4613

'定義資料庫鏈結

sub query_click(

)'query按鈕

call querydata

endsub

sub querydata(

)dim cn as

object

dim rs as

object

dim i as

integer

dim j as

integer

dim iid as

integer

dim sfirstname as

string

on error

goto err_label

' 在執行時不更新畫面,也不報警

false

false

' 新增db connection連線

set cn = createobject(

"adodb.connection"

)' 設定db連線逾時的時間

cn.commandtimeout =

300' 連線db

cn.open constrscm

set rs = createobject(

"adodb.recordset"

)

iid = cells(1,

2).value

sfirstname = cells(2,

2).value

ssql =

"select * from ***"

'下sql指令

set rs = cn.execute(ssql)

'將資料整表抄入excel

ifnot rs.eof then

cells(6,

1).copyfromrecordset rs

endifcall releasedb(cn, rs)

' 計算完成後恢復使用者excel的預設計算方式

exit

sub

err_label:

call releasedb(cn, rs)

' 發生異常後也需恢復畫面更新,以及報警通知

true

true

' 計算完成後恢復使用者excel的預設計算方式

'提示sql語句錯誤資訊

msgbox err.description, vbokonly + vbexclamation, "提示"

endsub

sub releasedb(

byref cn as

object

,byref rs as

object

)' 關閉recordset

if rs.state =

1then

rs.close

endif

' 關閉db連線

if cn.state =

1then

cn.close

endif

' 釋放recordset資源

set rs =

nothing

' 釋放db連線資源

set cn =

nothing

endsub

資料庫訪問框架 Chloe

chloe.orm 是國人開發的一款資料庫訪問元件,很是簡單易用。目前支援四種主流資料庫 sqlserver mysql oracle,以及sqlite,作者為這四種資料庫劃分出了各自對應的元件程式集,以 mysql 為例即 chloe.mysql.dll,其他以此類推,可以同時引用這些程式集從而在...

訪問資料庫 訪問資料庫

程式執行的時候,資料都是在記憶體中的。當程式終止的時候,通常都需要將資料儲存到磁碟上,無論是儲存到本地磁碟,還是通過網路儲存到伺服器上,最終都會將資料寫入磁碟檔案。而如何定義資料的儲存格式就是乙個大問題。如果我們自己來定義儲存格式,比如儲存乙個班級所有學生的成績單 名字成績 michael99 bo...

訪問資料庫 資料庫並行訪問

作者姓名 neo chen 陳景峰 暱稱 netkiller 呼號 bg7nyt 手機 86 13113668890 多維度架構 知乎 www.zhihu.com 這裡主要講述有關開發中遇到的資料庫並行問題 防止並行顯示背景 我們有乙個order訂單表,工作流如下 建立訂單 訂單分配 訂單審核 批准...