English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
この章は、SQLiteとは何か、SQLとは何が異なるか、なぜ必要か、アプリケーションデータベースをどのように処理するかを理解するのに役立ちます。
SQLiteは自包含でサーバーなし、設定なし、トランザクション型SQLデータベースエンジンを実現するソフトウェアライブラリです。SQLiteは最も急速に成長しているデータベースエンジンの1つであり、人気の増加は規模に関係ありません。SQLiteのソースコードは公共領域にあります。
SQLiteはプロセス内ライブラリであり、自包含でサーバーなし、設定なしのトランザクション型SQLデータベースエンジンを実現します。これは設定なしのデータベースであり、他のデータベースと同様に、システムに設定する必要はありません。
SQLiteエンジンは他のデータベースとは独立したプロセスではありません。必要に応じて静的または動的リンクでアプリケーションに接続できます。SQLiteは直接そのストレージファイルにアクセスします。
SQLiteは独立したサーバープロセスやシステムなしで実行できます(サーバーなし)。
SQLiteはゼロ設定で、設定や管理が必要ないことを意味します。
完全なSQLiteデータベースは単一のプラットフォーム間のディスクファイルに格納されています。
SQLiteは非常に小さくて軽量で、完全に構成されたメモリは小于400KiB、省略可能なオプション機能はそれより小さい250KiB。
SQLiteは独立しており、外部依存関係がないことを意味します。
SQLiteのトランザクションはACID完全に一致しており、複数のプロセスやスレッドからの安全なアクセスを許可します。
SQLiteはSQLをサポートしています。92(SQL2)標準の多くのクエリ言語機能をサポートしています。
SQLiteはANSI-Cで書かれており、シンプルで使いやすいAPIを提供しています。
SQLiteはUNIX(Linux、Mac OS-X、Android、iOS)およびWindows(Win32,WinCE、WinRT)上で利用可能です。
2000年-D.リチャード・ヒップ(R. Richard Hipp)がSQLiteをデザインした目的は、管理プログラムなしでプログラムを実行できるようにすることでした。
2000年-8月、SQLite 1.0はGNUデータベースマネージャーとともにリリースされました。
2011年-HippがSQLite DBにUNQlインターフェースを追加し、UNQLite(ドキュメント指向のデータベース)を開発することを発表しました。
以下の表に、SQLiteでサポートしていないいくつかのSQLを示します。92特性
番号 | 機能と説明 |
---|---|
1 | RIGHT OUTER JOIN LEFT OUTER JOINのみを実装しています。 |
2 | FULL OUTER JOIN LEFT OUTER JOINのみを実装しています。 |
3 | ALTER TABLE ALTER TABLEコマンドのRENAME TABLEおよびADD COLUMNバリアントをサポートしていますが、DROP COLUMN、ALTER COLUMN、ADD CONSTRAINTをサポートしていません。 |
4 | トリガーサポート FOR EACH ROWトリガーをサポートしていますが、FOR EACH STATEMENTトリガーをサポートしていません。 |
5 | VIEWs SQLiteのVIEWは読み取り専用です。ビュー上でDELETE、INSERT、またはUPDATE文を実行できないことがあります。 |
6 | GRANTとREVOKE 適用できるアクセス権限は基本的なオペレーティングシステムの通常のファイルアクセス権限のみです。 |
関係データベースと対話する標準のSQLiteコマンドはSQLに似ています。これらのコマンドはCREATE、SELECT、INSERT、UPDATE、DELETE、DROPであり、操作の性質に応じていくつかのカテゴリに分類できます。-
番号 | コマンドと説明 |
---|---|
1 | CREATE データベースに新しいテーブル、テーブルビュー、または他のオブジェクトを作成 |
2 | ALTER 現在のデータベースオブジェクト、例えばテーブルを修正 |
3 | DROP テーブル全体、データベースのテーブルビュー、または他のオブジェクトを削除 |
番号 | コマンドと説明 |
---|---|
1 | INSERT 新しいレコードの作成 |
2 | UPDATE レコードの修正 |
3 | DELETE レコードの削除 |
番号 | コマンドと説明 |
---|---|
1 | SELECT 一つのまたは複数のテーブルから特定のレコードを検索 |