excel vba 查詢 Sqlite資料庫(設定與語法)範例
暱稱: joey0415
中學生
- 帖子
- 361
- 主題
- 57
- 精華
- 0
- 積分
- 426
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- 2003,2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2010-5-13
- 最後登錄
- 2022-12-8
|
excel vba 查詢 Sqlite資料庫(設定與語法)範例
本帖最後由 joey0415 於 2013-7-31 20:16 編輯
自己試了很久,終於成功了,網路上以vba操作sqlite的文章非常少,所以發個文來紀錄一下
不能傳附件,附上dorpbox連結下載
sqlite odbc driver要裝
http://www.ch-werner.de/sqliteodbc/
附上練習資料庫與excel vba 檔
https://dl.dropboxusercontent.com/u/40393708/sqlite/sqlite3.zip- Sub select輸出至sheet1中()
- Dim cn, rs, f
-
- Set cn = CreateObject("adodb.connection")
- '開啟sqlite指定資料庫,路徑與檔案名稱要對
- cn.Open ("Driver={SQLite3 ODBC Driver};database=E:\joey.sqlite")
- '寫出SQL查詢語法
- Set rs = cn.Execute("SELECT * FROM home ")
- Sheet1.Cells.Delete
- For f = 0 To rs.fields.Count - 1
- Sheet1.Cells(1, f + 1).Value = rs.fields(f).Name
- Next
- Sheet1.Cells(2, 1).CopyFromRecordset (rs)
- cn.Close
- End Sub
複製代碼- Sub insert()
- Dim x
- Dim sql_command As String
- Dim connection_string As String
-
- Set x = CreateObject("adodb.recordset")
- sql_command = "insert into home(name, age) values('mary','50') "
- connection_string = ("Driver={SQLite3 ODBC Driver};database=E:\joey.sqlite")
- x.Open sql_command, connection_string
- Set x = Nothing
-
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
16#
發表於 2016-9-27 16:35
| 只看該作者
回復 15# joey0415
多謝!
我也許久未使用 FireFox 了。 |
|
|
|
|
|
|
暱稱: joey0415
中學生
- 帖子
- 361
- 主題
- 57
- 精華
- 0
- 積分
- 426
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- 2003,2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2010-5-13
- 最後登錄
- 2022-12-8
|
15#
發表於 2016-9-27 13:55
| 只看該作者
回復 13# c_c_lai
剛剛裝的只是驅動
通常都用firefox 的外掛 sqlite manager (不用錢)來新建
|
|
|
|
|
|
|
- 帖子
- 549
- 主題
- 152
- 精華
- 0
- 積分
- 691
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2013-8-10
- 最後登錄
- 2022-9-7
 
|
14#
發表於 2016-9-27 11:39
| 只看該作者
回復 7# joey0415
哇!容量好大耶,讚哦!
小弟下個月來研究一下,屆時再麻煩J大多多指教了! |
|
PKKO
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
13#
發表於 2016-9-27 11:04
| 只看該作者
回復 11# joey0415
它建立的資料庫會存放在哪裡? |
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
12#
發表於 2016-9-27 11:01
| 只看該作者
回復 11# joey0415
如果要新增或修改要如何進行?
|
|
|
|
|
|
|
暱稱: joey0415
中學生
- 帖子
- 361
- 主題
- 57
- 精華
- 0
- 積分
- 426
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- 2003,2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2010-5-13
- 最後登錄
- 2022-12-8
|
11#
發表於 2016-9-27 10:53
| 只看該作者
回復 10# c_c_lai
賴大您好!
看你的系統是32還是64,選擇正確直接裝就可以用了
它只是驅動程式 |
|
|
|
|
|
|
- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
10#
發表於 2016-9-27 07:59
| 只看該作者
回復 1# joey0415
請教一下有關 Sqlite 要如何正確安裝?
我已經下載瞭一些套件如圖:
我執行了 sqliteodbc.exe 以及 sqliteodbc_w64.exe
但是接下來要如何應用?
從未接觸過它還請多多指教! |
|
|
|
|
|
|
- 帖子
- 55
- 主題
- 1
- 精華
- 0
- 積分
- 81
- 點名
- 0
- 作業系統
- win
- 軟體版本
- 10
- 閱讀權限
- 20
- 註冊時間
- 2016-5-15
- 最後登錄
- 2018-11-1
|
9#
發表於 2016-9-26 22:00
| 只看該作者
回復 5# PKKO
備份小弟目前是用 gdrive 每天上傳,可以有備份記錄 不過只有 15gb
另外有別的軟體,可以設定每天備份,只不過備份出來的是單一檔份
如果要同步備份到別的資料夾or硬碟,可以上網查.bat,寫一個簡單的同步檔即可,設定開機啟動之類的 |
|
|
|
|
|
|
- 帖子
- 55
- 主題
- 1
- 精華
- 0
- 積分
- 81
- 點名
- 0
- 作業系統
- win
- 軟體版本
- 10
- 閱讀權限
- 20
- 註冊時間
- 2016-5-15
- 最後登錄
- 2018-11-1
|
8#
發表於 2016-9-26 21:56
| 只看該作者
回復 6# joey0415
看了 joey0415大的圖就了解了,原來是方法三,這是小弟一開始的作法xd
型式為:(單一Table即1000~9000個股)
1.Table=每日行情
2.Table=每日資券
3.Table=每日法人持股
4.Table=每日券商進出
5.Table=集保庫存
6.Table=每月營收
7.Table=每季財報
8.Table=每年財報
二星期前剛接觸sql,還不知道搜尋語法可以算這麼快速,所以才改為各別檔案
最近利用上班時間常常在找sql資料,原來索引、雙查詢也是很重要的(剛開始真的不懂@@)
結果本來查一筆資料要25s,加上索引後就變3s了,然後在改一下就變0.08s!!!
所以這二天的認真思考,怎樣的整理方式比較好,本身沒碰過這類的東西,語法也看得辛苦,就是範本一直試一直試~~
還好 joey0415大 可以幫忙解惑,非常感謝您:victory: |
|
|
|
|
|
|