Latest web development tutorials

SQLiteの紹介

そのアプリケーションデータベースのアプローチだけでなく、それを必要とする理由このチュートリアルでは、それはSQLの間で異なっている、あなたはSQLiteのが何であるかを理解するのに役立ちます。

SQLiteは、自己完結型、サーバレス、ゼロコンフィギュレーション、トランザクションのSQLデータベースエンジンを実装するソフトウェアライブラリです。 SQLiteはそのサイズにかかわらず、人気の面で増加している最も急成長しているデータベースエンジンです。 SQLiteのソースコードは、著作権の制約を受けません。

SQLiteは何ですか?

SQLiteは自給自足、サーバレス、ゼロコンフィギュレーション、トランザクションのSQLデータベースエンジンを達成するために、インプロセスライブラリです。 これは、他のデータベースが、あなたは、システムを構成する必要はありませんことを意味し、ゼロ構成データベースです。

他のデータベースと同様に、SQLiteのエンジンは独立したプロセスではなく、アプリケーションの要件によって静的または動的接続することができます。 その保存されたファイルへのSQLiteの直接アクセス。

なぜSQLiteのを使うのか?

  • これは、別個のサーバー・プロセスまたはオペレーティングシステム(なしサーバー)は必要ありません。

  • SQLiteはありませんインストールまたは管理することを意味し、設定は必要ありません。

  • 完全なSQLiteデータベースは、クロスプラットフォームに格納された単一のディスクファイルです。

  • SQLiteは、非常に、小型軽量、いつとき250KiB未満完全に設定400KiB未満、オプション機能の設定を省略しています。

  • SQLiteはありません外部に依存することを意味し、自給自足です。

  • SQLiteのトランザクションは、複数のプロセスまたはスレッドの安全性からのアクセスを可能にする、完全にACIDに準拠しています。

  • SQLiteのクエリ言語のサポートほとんどSQL92(SQL2)規格。

  • SQLiteはANSI-Cを使って書かれており、シンプルで使いやすいAPIを提供します。

  • SQLiteはでUNIX(Linuxでは、マックOS-X、アンドロイド、iOSの)およびWindows(Win32の、ひるみ、WinRTの)を実行することができます。

歴史

  1. 2000 - D.リチャード・ヒップのデザインのSQLiteは、プロシージャを管理するために必要とされていません。

  2. 2000-- 8月には、SQLite1.0はGNUデータベースマネージャ(GNUデータベースマネージャ)をリリース。

  3. 2011 - ヒップは、DB UNQlはSQLiteの、開発UNQLite(ドキュメント指向データベース)にインターフェイスを追加し、発表しました。

SQLiteの制限

次のようにSQLiteのでは、SQL92サポートされていない機能は次のとおりです。

特性描述
RIGHT OUTER JOIN只实现了 LEFT OUTER JOIN。
FULL OUTER JOIN只实现了 LEFT OUTER JOIN。
ALTER TABLE支持 RENAME TABLE 和 ALTER TABLE 的 ADD COLUMN variants 命令,不支持 DROP COLUMN、ALTER COLUMN、ADD CONSTRAINT。
Trigger 支持支持 FOR EACH ROW 触发器,但不支持 FOR EACH STATEMENT 触发器。
VIEWs在 SQLite 中,视图是只读的。您不可以在视图上执行 DELETE、INSERT 或 UPDATE 语句。
GRANT 和 REVOKE可以应用的唯一的访问权限是底层操作系统的正常文件访问权限。

SQLiteのコマンド

リレーショナルデータベースSQLiteのコマンドと対話する標準SQLに似ています。 コマンドは、CREATE、SELECT、INSERT、UPDATE、DELETE、およびDROP含まれます。 これらのコマンドは以下のカテゴリに分けることができ、それらの業務の性質に基づいています:

DDL - データ定義言語

命令描述
CREATE创建一个新的表,一个表的视图,或者数据库中的其他对象。
ALTER修改数据库中的某个已有的数据库对象,比如一个表。
DROP删除整个表,或者表的视图,或者数据库中的其他对象。

DML - データ操作言語

命令描述
INSERT创建一条记录。
UPDATE修改记录。
DELETE删除记录。

DQL - データクエリ言語

命令描述
SELECT从一个或多个表中检索某些记录。