Help us understand the problem. What is going on with this article?

SQLite3 チートシート

目的

SQLite3でよく使う操作をまとめておくことで、同じことを検索するのをなるべく避けたい。

はじめに

【SQLite3】コマンド例と他データベースとの比較から始める SQLite 入門
コンパクトに綺麗にまとまっているので、SQLiteを久々に利用するときにはこの記事は必読。

基本的な操作/コマンド等

DB接続

DBに接続(なければ作る)

$ sqlite3 test.sqlite3

show

設定を表示する

sqlite> .show
     echo: off
      eqp: off
  explain: off
  headers: off
     mode: list
nullvalue: ""
   output: stdout
separator: "|"
    stats: off
    width:

データのインポート、エクスポート

csv/tsvをインポート

sqlite> .separator <delimitter(, / \t)> 
sqlite> .import <file_name(.csv / .tsv)> <table_name>

csv/tsvとしてエクスポート

sqlite> .headers on -- 任意
sqlite> .mode csv
sqlite> .output <filename(.csv)>
sqlite> select * from <table_name>;

テーブル操作

テーブル一覧を表示

sqlite> .table

スキーマを表示

sqlite> .schema <table_name>

SQL

普通のSQLと同じ部分が多いので注意する点など

外部SQLファイルを実行

sqlite> .read test.sql

create

createはなるべく型を指定した方がいい。キャストされず例えばinteger/textが混在してしまったりする(ハマった)

sqlite> create table <table_name> (<column1> [type1], <column2> [type2], ...);

注意

データ型はドはまりしたりするので注意したい。

挿入されたデータが、指定されたデータ型にキャスト可能であればキャストするが、不可能ならそのまま格納する(1つのカラムに異なるデータ型が混在しうる)

【SQLite3】コマンド例と他データベースとの比較から始める SQLite 入門から引用

Pythonからの呼び出し

IntelliJから使う

IntelliJから使うと、テーブル名の補完も効いて快適です。

スクリーンショット 2016-08-09 11.40.22.png

[Database] => [+] => [Data Source] => [SQLite] => [Xerial] で新しくデータソースを作り、DBファイル名を指定して [Test Connection] すれOK(必要に応じてドライバをダウンロードします)

参考: Macで使えるSQLiteクライアント

Ibisとの連携

Quickstart on Crunchbase analysis using Ibis and SQLite

参考文献

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away