データベースの作成と接続

広告
eyecatch

SQLiteでデータベースを新規に作成する方法、そして作成済のデータベースに接続する方法について解説します。

データベースの作成

データベースを新規に作成するにはコマンドプロンプト上で次のように入力します。

sqlite3 データベース名

例として myfriend.sqlite3 という名前のデータベースを作成してみます。コマンドプロンプトを起動し、sqlite3.exe を設置したディレクトリに移動してから次のように実行して下さい。

sqlite3 myfriend.sqlite3

データベースの作成(1)

myfriend.sqlite3 データベースが存在していなかった場合は新しいデータベース myfriend.sqlite3 が作成された上で作成したデータベースに接続されます。

データベースに接続されている状態ですのでテーブルなどをデータベースに作成することができます。(テーブルの作成方法は別のページで詳しく解説します)。

データベースの作成(2)

コマンドラインツールを終了するには .exit と実行して下さい。接続していたデータベースから切断します。

.exit

データベースの作成(3)

では sqlite3.exe を設置したディレクトリを見て下さい。

データベースの作成(4)

データベース名に指定した名前と同じファイル名のファイルが作成されています。SQLite ではこのようにデータベースを作成すると同じ名前のファイルが1つ作成され、データベースに含まれるすべてのデータがこのファイルの中に保存されます。

なお sqlite3.exe を設置したディレクトリ以外にデータベースのファイルを設置したい場合には次のようにパス付きで指定して下さい。

sqlite3 パス名¥データベース名

例えば絶対パスで c:¥test ディレクトリ内に sample.sqlite3 データベースを作成する場合は次のように実行します。

sqlite3 c:¥test¥sample.sqlite3

データベースの作成(5)

データベースの名前について

データベースの名前は任意の名前を付けることができます。先ほどは myfriend.sqlite3 と付けましたがどのような形式でも構いません。

myfriend
myfriend.db
myfriend.sqlite
myfriend.sqlite3

データベースを作成すると SQLite ではデータベース名と同じ名前のファイルを作成してデータを保存します。例えばデータベース名が myfriend にした場合、作成されるファイル名も myfriend と拡張子が何も無いファイルが作成され、あとからファイルを見たときにこれが何のファイルなのか非常に分かりにくくなってしまいます。

そこでデータベースの名前を決める時はデータベースが保存されるファイル名のことも考慮して付けることをお勧めします。一般的にどのような拡張子が使われているのかは分かりませんが、今回は .sqlite3 という拡張子で統一しています。

データベースへの接続

データベースに対して色々な操作を行うにはまずデータベースへ接続する必要があります。新規にデータベースを作成した場合は作成と同時に接続が行われますが、既に作成済のデータベースへ接続するにはコマンドプロンプト上で次のように入力します。

sqlite3 データベース名

見て頂くと分かる通り新規にデータベースを作成する場合と同じ書式です。引数に既に存在するデータベース名を指定した場合、新しいデータベースが作成されるのではなく引数に指定したデータベースに接続が行われます。

では先ほど作成した myfriend.sqlite3 データベースへ接続してみます。コマンドプロンプトを起動し、sqlite3.exe を設置したディレクトリに移動してから次のように実行して下さい。

sqlite3 myfriend.sqlite3

データベースへの接続(1)

新しくデータベースが作成されたわけではなく既存のデータベースに接続していることを確認するために、既存のデータベースに作成したテーブルを確認してみます。 .tables と実行して下さい。

.tables

データベースへの接続(2)

personal テーブルが作成されていることが確認できました。このように新規にデータベースを作成する場合と既存のデータベースに接続する場合は同じ書式となっていますのでご注意下さい。

SQLite入門の他の記事を見てみる

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。