超々基本的なこと。
OSから見て1ファイルにデータベースというファイルを作成する(作成される)。
拡張子についての決め事は無いよう。.db
,.sqlite
、sqliteのバージョン3の場合は、.db3
,.sqlite3
等が一般的とか。
因みに、Microsoft Learn の例では、.db3
が使われているので、取りあえず今回のプロジェクトでは、.db3
を採用することとする。
cf.) .NET MAUI ローカル データベース – .NET MAUI | Microsoft Learn
データベース内には、テーブル,インデックス,ビューの定義、データ等々が含まれている。
AUTO_INCREMENT
を使用したテーブルを作成すると、自動的に sqlite_sequence というテーブルが作成されている。AUTO_INCREMENT
を使用するテーブルが複数でも、sqlite_sequence は1つで、name,seqの2つのカラムから構成されるテーブルで、nameにテーブル名,seqにその時点での最大値が入っている。
データベースを複数作成して、あるデータベースから他のデータベースを接続し、1つのデータベースへのアクセスでその他のデータベースも同時にアクセスすることが出来る。
データベースの接続には、ATTACH DATABASE
を使う。
ただし、ATTACH DATABASE
の情報はデータベースに保持されないよう(多分)で、データベース操作のユーティリティに DB Browser を使用すると、プロジェクトというファイル(拡張子.sqbpro
)が保存出来、このプロジェクトにはアタッチの情報が保持される。
あくまでも ユーティリティとして DB Browser を使う場合のことでもあり、tksqlite を使ったり、Microsoft の Access から接続したりすることもあること、またアタッチしたテーブルとのVIEWを作成する煩わしさもあり、1回のアクセスでのデータ操作が必要なテーブルは、1データベース内で完結するようにテーブル配置を行うこととする。