SQLITE3データベースを初めて知る
データベースDataBase、私たちの誰もがデータベースに触れたことがない、では、データベースとは何なのか?
それは、構造化され、統合され、共有可能な、一様に管理されたデータの集まりです
構造化されているというのは、データがあるモデルに従って整理されているという意味です。
簡単に言うと、箱をとって、その箱がたくさんの仕切りに分かれているように、仕切りで区切ることで、落とし穴のようにデータを入れていくのです しかし、忘れてはならないのは、箱は分類して保存することもできるということです。これは構造体にはできないことなのです
統合されているというのは、データベースが企業に関するさまざまなデータを一か所に保持しているという意味です。
先ほども言いましたが、箱は断片的なデータを一つにまとめるものです
そして、この箱の中で余分なものを片付けることができますよね?
このような集中保管のメリットは、次のように明らかです。
(1)1つのデータのバックアップは1回で済み、重複保存が少ない、すなわちデータの冗長性がなくなる。
(2) データの冗長性がないため、データの整合性も確保できる。
共有というのは、データベース内のデータを異なるユーザーが利用できることを意味します。 つまり、各ユーザーがそれぞれの条件で同じデータベースにアクセスすることができるのです。
統一されているというのは、データベースがDBMSによって統一されており、あらゆるデータアクセスがDBMSを介して行われるという意味です。
共有や統一管理の話は割愛しますが、箱はロックさえしなければ、もちろん誰でも利用可能です
今、新しい言葉を目にしましたね。DBMS
これは何なんだ?
実はフルネームは「DataBase Management System」。
データベースを管理するために使われる商用ソフトウェアです。
データベースへのアクセス要求はすべてDBMSが行う。
DBMSは、データベースを操作するための多くのコマンド(言語)、SQL言語を提供しています。
アプリケーション層、言語変換処理、データアクセス層、などなど、公式の説明はとてもややこしい!?まあ、それが嫌なので、ここで縮小して説明するわけです
上の画像で何が起こっているのかわかりますか?なんて素直なんでしょう。しかし、誰かが、どうやって管理するのか、と聞かなければなりません。それがSQL文です! もちろん、Linuxではそれほど大きなデータベースを使うことはないので、基本的なステートメントをマスターすればいいだけです。
SQL文については、後日のブログでまとめますね!
データベース管理の話でしたよね?でも、データベースが何を持っているかも知っておく必要がありますよね?
オラクルについては言わずもがな、このデータベースは聞いたことがあると思います 特徴は、多言語対応、優れた並列処理能力、主に金融・保険などの業界で使われていることです
SQL Serverマイクロソフト製品、非常に良いデータベース管理システムは、最高の今、マイクロソフトは、クラウドサービスを促進するために、あなたから隠さないようにする必要があり、私はそれを使用して、紺碧のサーバーを構築しています 私はそれを使用して非常に良いではありませんが、統合は、優れています!私はそれを使用することができます。
DB2、これもほとんど触ったことのないデータベースですねー。ただ、非常にポータブルであることは知っています
ACCESS 特に言うことはない、オフィスにはある、グラフィカルなインターフェースは非常にシンプルに操作できる
Sqlite3非常に小さなデータベースは、私の主人公になるのを待ちます
さて、以上5種類のデータベースを紹介しました。
次に、データベースにとって非常に重要なもう1つの概念、データモデルがあります。
実はこれ、組み合わせなんです。
(1) データ構造 // 型 数値など
(2) データ操作 // トラバーサル削除など
(3) データ整合性制約 // 特定のリレーショナルジョイン
大きく分けて4つのカテゴリーがあります。
階層的なデータモデル
メッシュデータモデル
リレーショナルデータモデル
オブジェクト指向データベースモデル
これは焦点であるため、私は、リレーショナルデータについて話すよ、残りの部分については、あなたが理解したいBaiduは、オブジェクト指向のモデルは、使用の多くはない、つい最近起動しているようだ!しかし、私は、このような、より良い、より良い、より良い、より良い、より良い、より良い、より良い、より良い。
ご存知のように、あなたが学校に入学するとき、学校は何によってあなたを定義するのでしょうか?学校番号です。そう、学籍番号と名前、成績、その他の情報は関係していて、学籍番号を見つけることは、あなたのすべての情報を見つけることなのです。
では、どのようにしてデータの独立性を保証するのだろうか。それは、データベースの構築方法によるのです
データベースシステムの3レベルスキーマ構造とは、外部スキーマ、スキーマ、内部スキーマの3つのレベルで構成されていることを意味します。しかし、私は、この抽象的なものに対する恐怖も感じるので、これを言うつもりはありません、実際、開発を行う過程で、我々は彼を理解する必要は全くありません、たとえ私が面接に行っても、試験官が私に尋ねた場合、私は彼に言うだろう、私は知らない、気にしない、私はデータベース人を作るためにここにいない! と。我々はそれにこだわる必要はありません、私はそれに知っていることであると述べます
データベースはまた、候補キー、主キーか何か、それを気にしない、我々はそれを使用するためにSQLサーバを使用するまで、この待ち時間!。ただ、1つのことを覚えている:学生番号は、あなたの主キーである 一意な識別子です!
また、組み込み用のデータベースとしてsqlite3を選択した理由は?
だって、小さいんだもん! 容量がピッタリ! 組み込み用のスペースは限られているので、データ用として使うのがちょうどいい!
高い携帯性 , 組み込み 多くを語らない , 携帯性でなければならない!
簡単なプログラミングインターフェース、シンプルなプログラミング 使える! 使わないなら何を使う?
コードオープンソース、コスト削減は必須! そうでなければ、エンベデッドをする意味がない!
具体的なメリットは何ですか?バイドゥ!
SQLiteの利点
メモリフットプリントが小さい
トランザクション操作は、システムクラッシュや停電の後でも、原子、一貫性、分離、永続性(ACID)を維持します。
ACID互換(atomic, consistent, independent, persistent)、ビュー、サブクエリ、トリガーをサポートしています。
1つのライブラリファイルにデータベースエンジンとインターフェイスが含まれており、その動作は他のライブラリに依存しない
1つのファイルにデータを入れることができる
C/C++、PHPなどのアプリケーションにインターフェースを提供
無料
SQLite ライブラリを再プログラムすることなく、SQL コマンドセットにカスタム関数(単純関数と集約関数)を動的に追加することが可能です。
B-treeの改良。テーブルにB+ツリーを使用し、クエリーの効率を大幅に改善しました。
さて、今日はこれを書いたので、お腹が空いたので、ご飯を食べに行きます sqlite3のインストールやsql構文については、また後日書きますね~。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python の sqlalchemy テーブル作成例 詳細
-
SQLite3のバインディング関数ファミリーの使い方とその注意点解説
-
ESCAPE を使用して SQL でエスケープを定義する
-
SQLiteパフォーマンス最適化例共有
-
SQLiteデータベースのインストールと基本操作ガイド
-
SQLiteのエラーコードのソート
-
SQLiteインメモリデータベース学習マニュアル
-
SQLiteデータベースの共通文とMACでのSQLite用可視化ツール「MeasSQLlite」の利用について
-
SQLiteチュートリアル(VIII)。コマンドラインツールの紹介
-
SQLiteチュートリアル(IV)。組み込み関数