職案人

求職・歴史・仏教などについて掲載するつもりだが、自分の思いつきが多いブログだよ。適当に付き合って下さい。

データベース管理(コマンド)

2015年08月10日 | sqlite
データベース管理(コマンド)


1)VACUM文
空き領域を無くすと同時にデータを順番に格納しなおす事が出来る。

2).importコマンド
別途用意したファイル(userdata.txt)からデータを読み込むコマンド
sqlite>.import FILE TABLE(書式)
まず
sqlite> .headers on
sqlite> .mode csv
sqlite> .mode column
を実行
sqlite> create table data(id integer, name text, address text);
sqlite> select * from data;
sqlite> .show
echo: off
eqp: off
explain: off
headers: on
mode: column
nullvalue: ""
output: stdout
colseparator: "|" ←ここに注意
rowseparator: "\r\n"
stats: off
width:
インストール
sqlite> .import ./data/userdata.txt data
./data/userdata.txt:4: expected 3 columns but found 1 - filling the rest with NULL
sqlite> select * from data;
1|Yoshida|Tokyo
2|Hori|Sapporo
3|Suzuki|Osaka
||
sqlite>
ただし、userdata.txtの中身は
1|Yoshida|Tokyo
2|Hori|Sapporo
3|Suzuki|Osaka

3).outputコマンド
SELECT文の実行結果だけではなく画面へ出力されていたものは全て指定したファイルへ出力
sqlite> select * from staff;
2|tanaka|
3|endoh|2
4|inoue|3
5|suda|
1|honda|3
sqlite> .show
echo: off
eqp: off
explain: off
headers: off
mode: list
nullvalue: ""
output: stdout
colseparator: "|"
rowseparator: "\n"
stats: off
width:
sqlite> .output ./logdata.txt
sqlite> select * from staff;
sqlite>
sqlite> .output stdout←戻る
sqlite> select * from staff;
2|tanaka|
3|endoh|2
4|inoue|3
5|suda|
1|honda|3
sqlite>

4).dump表示
sqlite> .dump
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE product(id integer, name text);
INSERT INTO "product" VALUES(1,'Android 5.0');
INSERT INTO "product" VALUES(2,'iphone 6s');
INSERT INTO "product" VALUES(3,'iPad 3');
INSERT INTO "product" VALUES(4,'Nexus 9');
COMMIT;
sqlite>

5).output
ダンプした結果をファイルへ出力
sqlite>.output ./dump.txt
元に戻す時
sqlite>.output stdout

6).read
ダンプした内容が保存されたファイルをインポートして同じ内容のデータベースを作成する事が出来る
.read ./dump.txt


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする