SQL入門
SQLiteのインストール

SQLの初心者向け入門解説、VBAからデータベースを扱うためのSQLを解説
公開日:2019-11-22 最終更新日:2019-11-23

SQLiteのインストール


SQLは単独では使えません、操作対象のデータベース(DB)とSQLを発行するアプリケーションが必要です。
SQLを発行するアプリケーションはエクセルVBAを使いますので、あとはDBがあれば良いということになります。
本シリーズではサンプルSQLの対象データベースとしてSQLiteを使います。


SQLiteを選定した理由としては、無料かつ簡単かつ動作が軽いだろうと考えたからです。
機能としては若干劣る部分もありますが、SQLの学習用としては十分だと思います。

SQLの基本部分は、他のDBでもほぼ同じですが、細部のSQL記述はDBごとに違ってきます。
SQLの掲載に当たってはDBを限定しなければなりませんので、SQLiteで動作確認したものを掲載していきます。

SQLiteのダウンロード

SQLiteのホームページへ行きます。
SQLite Home Page

マクロ VBA SQL DB

上部メニューの「Download」、もしくは、一番下の最新バージョンの「Download」をクリックします。
下にスクロールして、「Precompiled Binaries for Windows」

マクロ VBA SQL DB

sqlite-dll-win32-x86-3300100.zip
sqlite-dll-win64-x64-3300100.zip
こちらの2つは、使用環境(Excelのbit数)に応じて選択してください。
x86が32bit、x64が64bitになります。
VBAから実際に使うのは、このDLLになります。

コマンドラインツールも使いたいので、一番下の、
sqlite-tools-win32-x86-3300100.zip
こちらもダウンロードしてください。

SQLiteのインストール

上記でダウンロードしたzipを解凍して、同じフォルダに入れます。
C:\SQLite3 のようなフォルダを作成して、そこに全てのファイルを入れます。

sqlite-dll-win32-x86-3300100.zip、または、sqlite-dll-win64-x64-3300100.zipを解凍すると、
sqlite3.def
sqlite3.dll
sqlite-tools-win32-x86-3300100.zipを解凍すると、
sqdiff.exe
sqlite3.exe
sqlite3_analyzer.exe

マクロ VBA SQL DB


特にインストールを実行する必要はなく、これで完了です。
今後の説明としては、C:\SQLite3 ここにあるものとして説明していきます。

データベースの作成

コマンドプロンプトで、sqlite3.exeを実行してください。
簡単に、sqlite3.exeをダブルクリックして起動すれば良いです。

マクロ VBA SQL DB

赤字が出ていますが問題ありません。
データベースを作成するには、
.open データベース名
と入力しEnterします。
これだけでデータベースとしてのファイル・入れ物が出来てしまいます。
データベース名は拡張子の有無を問わないようですが、後で見た時にわかりやすいように、
.open sample.db
このように拡張子で区別できるようにしておくと良いでしょう。
拡張子は何でも良いようですが、.dbとか.sqlite3等が良いでしょう。

マクロ VBA SQL DB

フォルダを見てみると、sample.dbが作成されたことが確認できます。
終了するときは、
.exit
と入力してEnterしてください。
コマンドプロンプトが終了します。

GUIツールも欲しい

コマンドラインで全ての事ができますが、やはりGUIツールも欲しいところです。
SQliteのGUI管理ツールとして、「DB Browser for SQLite」があります。
SQLiteの定番GUI管理ツールです。
他にも有償・無償のツールがいくつかありますが、お好みで選んで問題ありません。
本シリーズとしては、あくまで簡易的な確認用途として使用します。

ダウンロードは以下のサイトになります。
DB Browser for SQLite

マクロ VBA SQL DB

下にスクロールして、

マクロ VBA SQL DB

バージョンは新しいほうが良いでしょう。
この時点では、
「Version3.11.2 release」を選択しました。

マクロ VBA SQL DB

下にスクロールして、

マクロ VBA SQL DB

環境及びインストーラーによって選択してください。
筆者は、
DB.Browser.for.SQLite-3.11.2-win64.msi - Standard (MSI) installer for Win64
こちらにしてみました。
ダウンロードしたら、さっそくインストール、
インストール画面が使いづらいですが、インストール先を気にしなければ、そのまま次々に進めばOKです。
インストールが完了したら、「DB Browser for SQLite」を起動してみましょう。
起動したら、データヘースを選択してみます。

マクロ VBA SQL DB

先ほどコマンドラインツールで作成した、
C:\SQLite3\sample.db
これを選択すると、以下のように表示されます。

マクロ VBA SQL DB

まだ、全てが(0)、つまり何も入っていない状態です。
次回以降、テーブルを作成した時には、このツールで中を見ることができるようになります。
「DB Browser for SQLite」の詳しい使い方については、以下のサイトを参考にしてください。
DB Browser for SQLiteの使い方
ただし、ダウンロードの案内等が古い画面になっていますので、ハージョン違い等については注意してください。

VBAからADOで使えるようにODBCドライバーを入れる

VBAからADOを使ってSQLiteを使えるようにするためにODBCドライバーを入れます。
SQLite ODBC Driver

マクロ VBA SQL DB

画面中央あたりの、

マクロ VBA SQL DB

sqliteodbc.exe
sqliteodbc_w64.exe

Excelのbit数に合わせて、32bitか64bitを選択してください。
筆者はExcel2019(64bit)なので、sqliteodbc_w64.exeを選択しています。
exeがダウンロードされたら実行してください。
ODBCドライバーなので、インストール先はデフォルトのままが良いでしょう。

正しくインストールされたかの確認は、
32bitなら、C:\WINDOWS\syswow64\odbcad32.exe
64bitなら、C:\WINDOWS\system32\odbcad32.exe
これを実行して、

マクロ VBA SQL DB

「追加」をクリックして、

マクロ VBA SQL DB
※いろいろ余分なものが入っていますがテスト機なので気にしないでください。

SQLite3 ODBC Driver
これが追加されていればインストールは正しく完了しています。

SQLiteのインストールの最後に

今回は、SQLの学習に必要なDB環境を用意しました。
筆者としては、
Oracle
MySql
Microsoft SQL Server
Microsoft Access
この辺りは使ってきましたが、SQLiteは今回初めてになります。
Access同様にファイル単位で管理できるので、SQL練習としては扱いやすいと感じました。

今後はこのSQLiteを使い、SQL入門として基礎から順次詳しく解説していきます。



同じテーマ「SQL入門」の記事

SQLiteのインストール
データベースに接続/切断

・ADOとは ・ADOを使う準備 ・SQLiteに接続/切断 ・データベースに接続できたかの確認 ・他のデータベースに接続する場合の指定 ・今後のためにクラス化しておく ・データベースに接続/切断の最後に
テーブルの作成/削除(CREATE TABLE,DROP TABLE)
・データベースで使う用語や記号について ・カラムのデータ型 ・テーブル作成:CREATE TABLE ・テーブル削除:DROP TABLE ・ADODB.ConnectionのExecuteメソッド ・クラスを拡張修正 ・VBAでADOを使う為のクラスの全VBA ・テーブルの作成/削除の最後に
テーブル名変更と列追加(ALTER TABLE)とテーブル自動作成
・テーブル名変更:ALTER TABLE RENAME TO ・カラム(列)追加:ALTER TABLE ADD COLUMN ・SQLの半角空白と改行とセミコロン ・テーブル自動作成 ・テーブル名変更と列追加とテーブル自動作成の最後に
データの挿入(INSERT)と全削除
・テスト用のテーブル作成 ・データ挿入:INSERT INTO ・テストデータをシートで作成 ・INSERT INTOのサンプルVBA ・より速くINSERT INTOを処理するために ・テーブルの全削除 ・データを挿入の最後に
VBAクラスの全コード:データの挿入
SQL入門の「データの挿入(INSERT)と全削除」時点のVBAクラスの全コードです。ADOを使ったDB接続のVBAクラスの全コード クラスモジュール:clsSQLite
データの挿入:バルクインサート
・テスト用のテーブル作成 ・VBAの改善点の概要 ・バルクインサートのSQL解説 ・バルクインサートのVBAコードと動作検証 ・文字列操作を改善する方法とVBAコード ・標準モジュールでの使い方と、100万行の実行結果 ・バルクインサートの最後に
データの取得:条件指定(SELECT,WHERE)
・テスト用のテーブル作成 ・データの取得:SELECTの構文 ・クラスにデータ取得用のメソッドを追加 ・シートにある見出しを使ってカラム名リストを作成 ・標準モジュールの使用例 ・WHERE句のいろいろな条件指定方法 ・データの取得:条件指定の最後に
VBAクラスの全コード:データの取得
SQL入門の「データの取得:条件指定(SELECT,WHERE)」時点のVBAクラスの全コードです。ADOを使ったDB接続のVBAクラスの全コード クラスモジュール:clsSQLite
データの取得:集約集計、並べ替え(DISTINCT,GROUP,HAVING,ORDER)
・データの取得:SELECTの構文 ・テスト用のテーブルとVBAコード ・DISTINCT句 ・GROUP BY句 ・HAVING句 ・ORDER BY句 ・VBAでのSQL使用例 ・列名(カラム名)の別名(エイリアス)をつけるAS句 ・データの取得:条件指定の最後に
SQL関数と演算子
・集計/数値関数 ・文字列関数 ・日付時刻関数 ・その他の関数 ・演算子 ・CASE演算子 ・SQL関数と演算子の最後に


新着記事NEW ・・・新着記事一覧を見る

ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)
累計を求める数式あれこれ|エクセル関数応用(2024-01-22)
複数の文字列を検索して置換するSUBSTITUTE|エクセル入門(2024-01-03)
いくつかの数式の計算中にリソース不足になりました。|エクセル雑感(2023-12-28)
VBAでクリップボードへ文字列を送信・取得する3つの方法|VBA技術解説(2023-12-07)
難しい数式とは何か?|エクセル雑感(2023-12-07)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.変数宣言のDimとデータ型|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.並べ替え(Sort)|VBA入門
8.条件分岐(IF)|VBA入門
9.セルのクリア(Clear,ClearContents)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ