SQLite で CSV ファイルからデータをインポートする

Vaibhav Vaibhav 2023年6月21日
SQLite で CSV ファイルからデータをインポートする

SQLite データベースは、C プログラミング言語で記述されたデータベース管理システムまたは DBMS です。 指定したディレクトリに単一ファイルベースのデータベースを作成し、その単一ファイル内にすべてのデータベースとテーブルを格納するモジュールです。

データベース スキーマとは、データベースの論理表現を指します。 簡単に言えば、データベースの全体構造を指します。

データベース テーブル スキーマは、テーブルの構造を参照します。 属性、そのタイプ、デフォルト値、制約などに関する詳細が含まれています。

一部のデータがテーブルに追加される場合、そのデータは、テーブルと列の型に設定された制約に従う必要があります。 SQLite テーブルにデータをロードまたは追加するには、INSERT コマンド、ORM、または任意のプログラミング言語の SQL インターフェイスを手動で使用するなど、さまざまな方法があります。

この記事では、CSV ファイルを使用して SQLite データベースにデータを追加する方法を説明します。

CSV データを SQLite テーブルにインポートする

次の SQL コマンドを使用して、CSV ファイルから SQLite テーブルにデータをインポートできます。

.mode csv -- Setting the mode to CSV
.import data.csv my_table -- Importing the data to the specified table
.exit -- Exit from the CSV mode

.mode csv コマンドは、出力モードを CSV に設定します。 .import data.csv my_table コマンドは、data.csv ファイル内のすべてのデータを新しいテーブル my_table にインポートします。

CSV ファイルの 1 行目にある列名が、作成されるテーブルの列名として使用されます。 最後に、.exit コマンドで CSV モードを終了します。

SQLite の新しいバージョンでは、上記のすべてのコマンドを一度に実行できます。

.import test.csv my_table --csv

CSV ファイルの最初の行に列名がない場合は、手動で SQLite テーブルを作成し、CSV ファイル構造に一致するスキーマを指定する必要があります。

さらに、通常どおりそのテーブルにデータをインポートできます。 このためのワークフローは、次のようになります。

create table my_table( ... ); -- Creating a new table
.mode csv -- Setting the mode to CSV
.import data.csv my_table -- Importing the data to the specified table
.exit -- Exit from the CSV mode
著者: Vaibhav Vaibhav
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.

関連記事 - SQLite CSV