sql >> データベース >  >> RDS >> SQLite

SQLiteとは

    概要 :このチュートリアルでは、SQLiteの概要と、SQLiteを最も広く展開されているSQLデータベースエンジンにするSQLiteの特徴的な機能について説明します。

    SQLiteとは

    SQLiteは、リレーショナルデータベース管理システムを提供するソフトウェアライブラリです。 SQLiteのライトは、セットアップ、データベース管理、および必要なリソースの点で軽量であることを意味します。

    SQLiteには、自己完結型、サーバーレス、ゼロ構成、トランザクション型の注目すべき機能があります。

    サーバーレス

    通常、MySQL、PostgreSQLなどのRDBMSは、動作するために別のサーバープロセスを必要とします。データベースサーバーにアクセスするアプリケーションは、TCP/IPプロトコルを使用して要求を送受信します。これはクライアント/サーバーアーキテクチャと呼ばれます。

    次の図は、RDBMSクライアント/サーバーアーキテクチャを示しています。

    SQLiteはこのようには機能しません。

    SQLiteはサーバーを実行する必要はありません。

    SQLiteデータベースは、データベースにアクセスするアプリケーションと統合されています。アプリケーションは、ディスクに保存されているデータベースファイルから直接読み取りおよび書き込みを行うSQLiteデータベースと対話します。

    次の図は、SQLiteサーバーレスアーキテクチャを示しています。

    自己完結型

    SQLiteは自己完結型であるため、オペレーティングシステムまたは外部ライブラリからのサポートは最小限で済みます。これにより、SQLiteはあらゆる環境、特にiPhone、Androidフォン、ゲーム機、ハンドヘルドメディアプレーヤーなどの組み込みデバイスで使用できるようになります。

    SQLiteはANSI-Cを使用して開発されています。ソースコードは、大きなsqlite3.cとそのヘッダーファイルsqlite3.hとして入手できます。 SQLiteを使用するアプリケーションを開発する場合は、これらのファイルをプロジェクトにドロップして、コードでコンパイルするだけです。

    ゼロ構成

    サーバーレスアーキテクチャのため、SQLiteを使用する前に「インストール」する必要はありません。構成、開始、停止する必要のあるサーバープロセスはありません。

    さらに、SQLiteは構成ファイルを使用しません。

    トランザクション

    SQLiteのすべてのトランザクションは完全にACIDに準拠しています。これは、すべてのクエリと変更がアトミックで、一貫性があり、分離されており、耐久性があることを意味します。

    つまり、アプリケーションのクラッシュ、電源障害、オペレーティングシステムのクラッシュなどの予期しない状況が発生した場合でも、トランザクション内のすべての変更は完全に行われるか、まったく行われません。

    SQLiteの特徴的な機能

    SQLiteはテーブルに動的型を使用します。これは、データ型に関係なく、任意の列に任意の値を格納できることを意味します。

    SQLiteを使用すると、単一のデータベース接続で複数のデータベースファイルに同時にアクセスできます。これにより、1つのコマンドで異なるデータベースのテーブルを結合したり、データベース間でデータをコピーしたりするなど、多くの優れた機能が提供されます。

    SQLiteは、非常に高速に動作するインメモリデータベースを作成できます。

    参照

    1. https://www.sqlite.org –SQLiteホームページ
    2. https://www.sqlite.org/features.html –SQLiteの機能
    3. https://www.sqlite.org/copyright.html –SQLiteライセンス
    4. https://www.sqlite.org/docs.html –SQLiteのドキュメント

    1. MySQLのインデックスを理解する:パート2

    2. SQL-1つのクエリで複数のレコードを更新します

    3. テーブル内の重複する行を削除する

    4. MySQLバージョンを確認する方法