目次
1.データベース(DB)
データベース: 整理されたデータのコンテナー。通常はファイルまたはファイルのセット。データベースは、データを組織的に収集および保管するための倉庫に相当します。
1. データベースのメリット
- 全体的なデータ構造化
- 高度なデータ共有、低い冗長性、容易な拡張
- 高いデータ独立性
- データはデータベース管理システムにより一元管理・制御されます
2. データベース格納データの特徴
- データをテーブルに配置し、そのテーブルをライブラリに配置します。
- データベースにはさまざまな種類のテーブルが存在し、各テーブルにはそれ自体を識別するための独自の名前が付いています。テーブル名は一意です。
- テーブルには、Java の「クラス」の設計と同様に、データをテーブルに格納する方法を定義するプロパティがあります。
- テーブルは列 (フィールドとも呼ばれます) で構成されます。すべてのテーブルは 1 つ以上の列で構成されており、各列は Java の「属性」に似ています。
- テーブル内のデータは行に格納され、各行は Java の「オブジェクト」に似ています。
2. データベース管理システム (DBMS)
データベース管理システム (DataBase Management System): データベースを管理するプログラム。一般的なデータベース管理システムには、Oracle、MySQL、DB2、SQLServer、SyBase、SQLite などが含まれます。
DBMS については、以前のブログ「データベース管理システム (DBMS)」で詳しく説明しています。興味のある方はぜひご覧ください。
3.MySQL
MySQL: データベース管理システム。
1. MySQL の利点
- 小型、高速、総所有コストが低い、オープンソース。
- 複数のオペレーティング システムがサポートされています。
- これはオープン ソース データベースであり、提供されるインターフェイスは多言語接続操作をサポートします。
- MySqlのコアプログラムは完全なマルチスレッドプログラミングを採用しています。スレッドは、システム リソースを圧迫せずにユーザーにサービスを柔軟に提供する軽量のプロセスです。マルチスレッドとC言語で実装されたMySqlは、CPUを簡単にフル活用できます。
- MySql には、非常に柔軟で安全な権限とパスワードのシステムがあります。クライアントが MySql サーバーに接続すると、クライアント間のパスワード送信はすべて暗号化され、MySql はホスト認証をサポートします。
- Windows 用の ODBC をサポートし、すべての ODBC 2.5 機能とその他の多くの機能をサポートし、Access を使用して MySql サーバーに接続できるため、アプリケーションを拡張できます。
- 大規模なデータベースをサポートし、数千万件のレコードを持つデータベースを簡単にサポートできます。オープンソース データベースなので、さまざまなアプリケーションに合わせて変更できます。
- 非常に高速で安定したスレッドベースのメモリ割り当てシステムを備えており、安定性を心配することなく継続的に使用できます。
- また、MySQL は高度な多様性を備えており、コマンドライン クライアント操作、Web ブラウザ、C++、Perl、Java、PHP、Python などのさまざまなプログラミング言語インターフェイスなど、さまざまなユーザー インターフェイスを提供できます。事前にパッケージ化されたクライアントを使用することも、適切なアプリケーションを自分で作成することもできます。MySQL は Unix、Windows、OS/2 などのプラットフォームで利用できるため、パーソナル コンピュータまたはサーバーで使用できます。
2. MySQL の欠点
- ホットバックアップはサポートされていません。
- セキュリティ システムは標準ではなく複雑で、ユーザー権限を再読み取りするために mysqladmin が呼び出された場合にのみ変更されます。
- 単一のストアド プロシージャ (ストアド プロシージャ) 言語はありません。
- MySQL の価格はプラットフォームとインストール方法によって異なります。MySQL for Linux は、サードパーティではなくユーザー自身またはシステム管理者がインストールする場合は無料で、3 番目のオプションではライセンス料を支払う必要があります。Unix または Linux の自己インストールは無料ですが、Unix または Linux のサードパーティによるインストールは有料です。
3.MySQLを使用する
MySQL のインストールについては詳しく説明しません。
- 管理者として cmd を実行する
- net 開始サービス名 (開始サービス)
- ネット停止サービス名(停止サービス)
- mysql -h ホスト名 -P ポート番号 -u ユーザー名 -p パスワード (ローカル データベースにログインする場合、ホストのポート番号は省略できます。-p の後にはパスワードを書かずに、パスワードを続けて書くこともできます)新しい行)
もちろん、GUI クライアントをインストールすることもできます。
4.SQL
SQL (構造化クエリ言語): 構造化クエリ言語です。SQL は、データベースと通信するために設計された言語です。ほとんどすべての重要な DBMS は SQL をサポートしています。DBMS は SQL を実行することでデータベースを操作しますが、2 つの DBMS によって実装される SQL はまったく同じではありません (SQL 言語にも方言があります)。
1. SQLの利点
- 特定のデータベース ベンダー独自の言語ではなく、ほぼすべての DBMS (データベース ソフトウェア) が SQL をサポートしています。
- 学習が簡単です (Java、C、C++ などと比較して、構文が単純で使いやすい)。
- シンプルですが、実際には非常に複雑で高度なデータベース操作を柔軟に実行できる強力な言語です。
2. 分類
- DQL: データ クエリ言語。データ レコードのクエリ → クエリの選択に使用されます。
- DML: データ操作言語。データ レコードの変更→削除/削除の切り捨て、更新変更、追加の挿入に使用されます。
- DDL: データベース オブジェクト/テーブルの作成、変更、削除など、データベース/テーブルの構造を定義するために使用されます → 作成、変更、削除 (放棄)。
- DCL: データベース制御言語。データベース ユーザー、ロール権限→ GRANT 承認、REVOKE 認証解除を設定または変更するために使用されます。
- TCL: トランザクション制御言語。データベース アクセスの制御に使用されます。 → COMMIT コミット、ROLLBACK ロールバック、SAVEPOINT セーブポイントの設定、SET TRANSACTION トランザクション オプションの変更。
- CCL: ポインター制御言語。1 つ以上のテーブルの個々の行に対する操作 → DECLARE CURSOR、FETCH INTO、および UPDATE WHERE CURRENT に使用されます (この言語はあまり使用されません)。
3. 文法仕様
- この言語では大文字と小文字は区別されませんが、キーワードや指示は大文字にし、リストは小文字にするのが慣例です。
- 各コマンドは「;」または「/g」で終わる必要があります。
- 各コマンドは、必要に応じてインデントしたり折り返すことができます。
- コメント: 単一行コメント: "# コメント テキスト" または "-- コメント テキスト" (間にスペースあり)
複数行コメント: /* コメント テキスト */
5.連絡先
- データベースに保存されているデータ
- 当社ではデータベース管理システム(DBMS)を利用してデータを管理しています。
- MySQL は DBMS の一種です
- データの操作要件(追加、削除、変更、クエリ)がある場合、SQL言語を通じてDBMSに指示します。