Top > SQLite > データベース・テーブル操作


データベースの操作

使用中のデータベースを表示する

  • SQLite では、同時に複数のデータベースに接続できる
  • メインのデータベースがどれか確認できる
  • 一般には、コマンドラインから入力したファイル名となる
    sqlite> .database
    seq  name             file
    ---  ---------------  ----------------------------------------------------------
    0    main             /home/hoge/work/test.sqlite


データベース名の変更・削除

  • 特に特殊なコマンドはない
名前変更
  • ファイル名を変更する
削除
  • ファイルを削除する


テーブル操作

テーブルの一覧表示

  • 接続中のデータベースに存在するテーブル名を表示
  • アタッチされたデータベースのテーブル名は表示されない
    sqlite> .table
    menu_no_type    t_menu    t_menu_back   t_menu_tmp


テーブル名の変更

構文
ALTER TABLE 現在のテーブル名 RENAME TO 新テーブル名;
例 (t_menu を t_menu_ori に変更)
sqlite> ALTER TABLE t_menu RENAME TO t_menu_ori;
sqlite> .table
menu_no_type  t_menu_back   t_menu_ori    t_menu_tmp


テーブルの削除

  • 削除時のアラートは特にない
  • 削除後は元に戻せない
  • 複数のテーブルを同時に削除することはできない
構文
DROP TABLE テーブル名;
sqlite> DROP TABLE t_menu_tmp;
sqlite> .table
menu_no_type  t_menu_back   t_menu_ori


カラム名・テーブル構造の表示

  • テーブルを指定して表示する
  • テーブル内のカラム名とデータ型を表示する
  • 表示されるのはテーブルを作成したときの CREATE 文
  • データ型を指定しなかったテーブルは、データ型の記述は無い
  • 間違ったデータ型を指定してもエラーとならず、型無しとなる
sqlite> .schema t_menu_ori
CREATE TABLE "t_menu_ori" (id INTEGER, name VARCHAR(16));

sqlite> .schema menu_no_type
CREATE TABLE menu_no_type (id, name);


カラムの追加

  • カラム名とデータ型を指定して追加する
  • 追加したカラムは、最後尾に追加される
  • SQLite では、カラムの削除、カラム名の変更はできない
    必要な場合は、ここを参考に、新たにテーブルを作ってください
構文
ALTER TABLE テーブル名 ADD カラム名 データ型;
<カラムの追加>
sqlite> ALTER TABLE t_menu_ori ADD price INTEGER;

<確認>
sqlite> .schema t_menu_ori
CREATE TABLE "t_menu_ori" (id INTEGER, name VARCHAR(16), price INTEGER);

<データを入力>
sqlite> UPDATE t_menu_ori SET price=300 WHERE id=1;

<確認>
sqlite> SELECT * FROM t_menu_ori WHERE id=1;
id    name           pric
----  -------------  ----
1     イチゴミルク   300

リロード   凍結解除 コピー 名前変更   ホーム 一覧 検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: Mon, 03 Jun 2019 14:37:49 UTC (686d)