1. ホーム
  2. データベース
  3. エスキューエルライト

SQLiteデータベースの共通文とMACでのSQLite用可視化ツール「MeasSQLlite」の利用について

2022-01-21 04:23:56

I. はじめに

        SQLiteは非常に小さく便利なデータベースであり、iOS開発におけるネイティブフレームワークでよくサポートされています。

II. SQLiteの一般的なステートメント

    データベースはデータを統合して管理するために存在するので、データの追加、削除、変更、確認が中心的な操作となる。

1. データテーブル文の作成

    データベースファイルは、いくつかのテーブルから構成することができます。データベースファイルに次のようなステートメントでテーブルを作成します。

コピーコード コードは以下の通りです。

create table class(num integer PRIMARY KEY,name text NOT NULL DEFAULT "1 class",count integer CHECK(count>10))

上記の文のコードを簡略化すると、次のような形式になります。

create table テーブル名 (パラメータ名1 型修飾子 条件, パラメータ名2 型修飾子 パラメータ, ---)

sqliteでは以下の型がサポートされています。
smallint 短い整数
integer 整数
リアルリアル
float 単精度浮動小数点
倍精度浮動小数点
通貨単位の長整数
varchar 文字型

テキスト文字列

バイナリ バイナリデータ
ブロブ バイナリ ラージオブジェクト
boolean ブール型
日付 日付型
時間 時間型
timestamp タイムスタンプ型

条件の変更に関しては、以下のようなものが一般的である。

PRIMARY KEY。このパラメータが主キーとなり、主キーの値はユニークである必要があり、数値などデータのインデックスとして使用することができます。
NOT NULL : このパラメータを非NULL属性としてマークします。
UNIQUE : このパラメータを、プライマリキーと同様にユニークキーとしてマークします。

DEFAULT:このパラメーターのデフォルト値を設定する
チェック:パラメータのチェック条件は、例えば、上記のコードは、データが有効であることがより大きくなければならないカウントを書き込みます。

2. データの追加

データの行を追加するには、次のステートメントを使用します。

コピーコード コードは以下の通りです。

insert into class(num,name,count) values(2,"3rd year class 2",58)

上記の文のコードを簡略化すると、次のような形式になります。
コピーコード コードは以下の通りです。

insert into table name(key1, key2, ---) values(value1, value2, ---)

データカラムの追加、つまり新しいキーを追加する場合は、次のステートメントを使用します。
コピーコード コードは以下の通りです。

alter table class add new text
alter table table name add key name key type

3. データの修正

次のステートメントを使用して変更操作を行います。

コピーコード コードは以下の通りです。

update class set num=3,name="new class" where num=1
update table name set key1=value1, key2=value2 where condition

例えば、上記のコードでは、numが1のクラスの名前とmunの値を変更するように、whereの後にデータを変更する条件を追加します。

4. データの削除

コピーコード コードは以下の通りです。

delete from class where num=1
delete from table name where condition

上記のコードでは、番号1のデータを削除しています。

次の文は、テーブルを削除する場合に適用されます。

コピーコード コードは以下の通りです。

drop table class
drop table table name

5. クエリ操作

問い合わせ操作はデータベースの中核的な機能であり、sqliteの問い合わせコマンドの多くは複雑な問い合わせ関数を素早く達成することができます。

テーブルの特定のキーを問い合わせる。

コピーコード コードは以下の通りです。

select num from class
select key name, key name --- from table name

すべてのキーバリューデータを問い合わせる。

コピーコード コードは以下の通りです。

select * from class
select * from table name

* は完全なワイルドカードで、任意の文字を無制限に表現します。

クエリーのソート

コピーコード コードは以下の通りです。

select * from class order by count asc
select key name, key name, --- from table name order by key name Sort by

order by の後に、ソートするキーの名前を続けて、sort by asc asc desc

ルックアップの回数とルックアップの位置を制限する。

コピーコード コードは以下の通りです。

select * from class limit 2 offset 0
select key name from table name limit max entries offset query start position

条件付きクエリ。

コピーコード コードは以下の通りです。

select * from class where num>2
select key name from table name where condition

データエントリ数を問い合わせる。

コピーコード コードは以下の通りです。

select count(*) from class
select count(key name) from table name

重複排除のクエリ。

コピーコード コードは以下の通りです。

select distinct num from class
select distinct key name from table name

III. MesaSQLite の簡単な使い方

        MesaSQLite は、ビジュアルな SQLite データベース編集ソフトウェアで、非常に使いやすい。以下のアドレスはダウンロードリンクです。 https://www.jb51.net/softs/419734.html .

1. データベースファイルの作成

MesaSQLite ソフトウェアを開き、ナビゲーションバーでファイルを選択し、ポップアップメニューで New DataBase を選択して新しいデータベースファイルを作成するか、Open Database を選択してデータベースを開くことができます。
注:デフォルトで作成されるデータベースファイルはrdb形式ですが、手動でdb形式に変更すればOKです。


2. テーブルを作成する

MesaSQLite にはデータベースを操作する方法が 2 つあります。1 つは sql 文で、もう 1 つはビジュアルインターフェイスで行います。SQL クエリツールウィンドウでは、次のように SQL 文を使ってデータベースを操作することができます。


または、Structure tool ウィンドウでビジュアルに作成する場合。

3. クエリーの操作

データに対するクエリ操作は、SQLクエリツールを使ってステートメントでクエリを実行するか、コンテンツウィンドウにクエリ条件を入力して、次のように実行することができます。