Sqlite基本コマンドセット(linux / fedora / ubuntu)

  著作権に関する声明:この記事はWang Xiaoleiの元の記事であり、ブロガーの許可なしに転載することはできませんhttps://blog.csdn.net/dream_an/article/details/48222443

**注:Fedoraにはsqlite3が付属しており、インストールする必要はありません。コマンドsqlite3を直接入力するだけです。 ****

**———————————— Ubuntuはコマンドラインでsqlite3と入力し、インストールが進行中でないことを確認します--- **

**1、 sqlite3 **をインストールします

ubuntuの下にsqlite3をインストールし、ターミナルで直接コマンドを実行します。

apt-get install sqlite3

バージョン情報の表示:

sqlite3 -version

——————————————
2 、 sqlite3の一般的に使用されるコマンド
現在のディレクトリにtest.dbデータベースファイルを作成または開き、sqlite>プレフィックスで識別されるsqliteコマンドターミナルを入力します。

sqlite3 test.db

データベースファイル情報コマンドを表示します(コマンドの前の文字「。」に注意してください)。
sqlite>.database

すべてのテーブルの作成ステートメントを表示します。
sqlite>.schema

指定されたテーブルの作成ステートメントを表示します。
sqlite>.schema table_name

テーブルの内容をsqlステートメントの形式でリストします。
sqlite>.dump table_name

表示される情報の区切り文字を設定します。
sqlite>.separator symble
例:表示情報を「:」で区切るように設定します
sqlite>.separator :

表示モードを設定します。
sqlite>.mode mode_name
例:デフォルトはリストで、列に設定されています。他のモードは.helpで表示して、モード関連のコンテンツを表示できます。
sqlite>.mode column

ヘルプ情報の出力:
sqlite>.help

各列の表示幅を設定します。
sqlite>.width width_value
例:幅を2に設定します
sqlite>.width 2

現在の表示形式の構成を一覧表示します。
sqlite>.show

sqliteターミナルコマンドを終了します。
sqlite>.quit
または
sqlite>.exit

3、 sqlite3命令
sqlのコマンド形式:すべてのsqlコマンドはセミコロン(;)で終わり、2つのマイナス記号(-)はコメントを示します。
といった:
sqlite> create studen_table(Stu_no interger PRIMARY KEY、Name text NOT NULL、Id interger UNIQUE、Age interger CHECK(Age> 6)、School text DEFAULT'xx primary school);
このステートメントは、学生情報を記録するデータテーブルを作成します。

3.1 sqlite3に保存されているデータの種類
NULL:NULL値を識別します
INTERGER:整数型
REAL:浮動小数点数
テキスト:文字列
BLOB:バイナリ番号

3.2 Sqlite3ストレージデータの制約
Sqliteの一般的に使用される制約は次のとおりです。
プライマリキー-プライマリキー:
1 )プライマリキーの値は一意である必要があり、学生IDなどの各レコードを識別するために使用されます
2 )プライマリキーは同時にインデックスでもあり、プライマリキーを介してレコードを検索する方が高速です
3 )主キーが整数型の場合、列の値は自動的に大きくなります
NOT NULL-空ではありません:
制約列レコードを空にすることはできません。空にしないと、エラーが報告されます
ユニーク-ユニーク:
主キーに加えて、他の列を制約するデータの値は一意です
チェック-状態チェック:
カラムの値を制約して、保存する前に条件を満たすようにします
DEFAULT-デフォルト値:
列データの値は基本的に同じであり、そのようなフィールド列をデフォルト値として設定できます

3.3 sqlite3の一般的な手順

1 )データシートを作成する
create table table_name(field1 type1, field2 type1, ...);
table_nameは作成するデータテーブルの名前、fieldxはデータテーブル内のフィールドの名前、typexはフィールドタイプです。
たとえば、学生IDや名前などの学生情報を含む簡単な学生情報テーブルを作成します。
create table student_info(stu_no interger primary key, name text);

2 )データレコードを追加する
insert into table_name(field1, field2, ...) values(val1, val2, ...);
valxは、フィールドに格納する必要がある値です。
たとえば、学生情報テーブルにデータを追加します。
Insert into student_info(stu_no, name) values(0001, 'lei');

注:TEXTタイプを挿入するときは、引用符である ''を追加する必要があります。それ以外の場合エラーエラー:そのような列はありません:lei

3 )データレコードを変更する
update table_name set field1=val1, field2=val2 where expression;
ここで、はsqlステートメントの条件付き判定に使用されるコマンドです。expressionは判定式です。
たとえば、学生番号が0001の学生情報テーブルのデータレコードを変更します。
update student_info set stu_no=0001, name=hence where stu_no=0001;

4 )データレコードを削除する
delete from table_name [where expression];
判定条件が追加されていない場合、テーブル内のすべてのデータレコードがクリアされます。
たとえば、学生番号が0001の学生情報テーブルのデータレコードを削除します。
delete from student_info where stu_no=0001;

5 )データレコードのクエリ
selectコマンドの基本フォーマット:
select columns from table_name [where expression];
クエリを実行し、すべてのデータレコードを出力します
select * from table_name;
b出力データレコードの数を制限する
select * from table_name limit val;
cデータレコードを昇順で出力します
select * from table_name order by field asc;
dデータレコードを降順で出力します
select * from table_name order by field desc;
e条件クエリ
select * from table_name where expression;
select * from table_name where field in ('val1', 'val2', 'val3');
select * from table_name where field between val1 and val2;
fレコード数を照会する
select count (*) from table_name;
g列データを区別する
select distinct field from table_name;
一部のフィールドの値が繰り返し表示される場合があります。Distinctは重複を削除し、列の各フィールド値を個別に一覧表示します。

6 )インデックス
データテーブルに多数のレコードがある場合、インデックスは検索データテーブルの高速化に役立ちます。
create index index_name on table_name(field);
たとえば、studentテーブルのstu_noフィールドのインデックスを作成します。
create index student_index on student_table(stu_no);
確立が完了すると、sqlite3はフィールドにクエリを実行するときにインデックスを自動的に使用します。

7 )データテーブルまたはインデックスを削除します
drop table table_name;
drop index index_name;

3.4 テーブル構造を表示

  1. データベース内のすべてのテーブルを一覧表示します

. table

  1. これらのテーブルの構造を表示します。

select * from sqlite_master where type="table";

デフォルトでは、赤いボックスのヘッダーは表示されません。前に設定する必要があります。コマンドは次のとおりです。

. header on

  1. 特定のテーブルのテーブル構造のみを表示するには、たとえば、皇帝のテーブルを表示するには、次のコマンドを実行します。

select * from sqlite_master where type="table" and name="student_info";

または:

sqlite> .schema student_info

CREATE TABLE student_info( stu_no integer primary key, name text);

Recommended Posts

Sqlite基本コマンドセット(linux / fedora / ubuntu)