系統(tǒng):Windows 7
軟件:Excel 2010 / Access 2010
Part 1:目標
對一個已有數據庫進行加密
向該數據庫中的信息表寫入信息:張三,男,23
信息表
Part 2:建立帶密碼數據庫
設置Access加密方式:菜單 文件 - 選項 - 客戶端設置 - 加密方法,選擇使用舊版加密
新建一個空白Access文件
打開該文件,菜單 文件-打開 選項
選中擬打開的數據庫,在右下角處選以獨占方式打開目標數據庫
再次選擇菜單 文件 下,選擇 用密碼進行加密
在彈出的窗口設置數據庫密碼中輸入密碼,這里設置為123
會彈出一個提示框,這里就直接忽略了,具體影響還沒發(fā)現(xiàn)
注:
解決VBA ADO連接Access2010以上版本密碼無效問題
解決EXCEL VBA ADO連接ACCESS 2010,但總提示密碼無效,但密碼是正確的
1.先以獨占的方式打開,刪除ACCESS2007或者ACCESS2010的密碼。
2.ACCESSS 2010選項設置,一項一項仔細看,終于在“客戶端”選項卡里最下方有個“加密方式”的一欄中找到問題的答案。提供了兩種加密方式,一種是新加密方式,也是默認選項,安全性較高,另一種是舊加密方式,括號中寫到適用于反向兼容和多用戶數據庫,改到舊加密方式,重新設置密碼。
Part 3:代碼
Sub test()
Dim adConn As New ADODB.Connection '連接 Dim rs As New ADODB.Recordset
Dim SQL As String Dim tblName
Dim dbAddr dbAddr = ThisWorkbook.Path & "\帶密碼.accdb" tblName = "信息表" '連接數據庫 With adConn .Provider = "Microsoft.ACE.OLEDB.12.0" .Open "Data Source=" & dbAddr & ";Jet OLEDB:DataBase Password=123;" End With SQL = "Insert Into " & tblName & " (姓名,性別,年齡) Values('張三','男',23)" Set rs = adConn.Execute(SQL)
'關閉數據庫 adConn.Close
Set adConn = Nothing
End Sub
Part 3:部分代碼解讀
With adConn .Provider = "Microsoft.ACE.OLEDB.12.0" .Open "Data Source=" & dbAddr & ";Jet OLEDB:DataBase Password=123;" End With
Jet OLEDB:DataBase Password=123;
,密碼為123
注意:若是以Access為操作界面,連接Access數據庫時,據我嘗試,是不需要變更加密方式的,大家有興趣可以試一下