ホームページ > データベース > mysql チュートリアル > MySQL と Oracle の違いは何ですか?

MySQL と Oracle の違いは何ですか?

零下一度
リリース: 2017-06-29 10:42:16
オリジナル
1267 人が閲覧しました

1. Oracle は大規模なデータベースであり、Mysql は中小規模のデータベースです。Oracle の市場シェアは 40% に達しますが、Mysql はオープンソースであり、Oracle の価格は非常に高いです。

2. Oracle は大規模な同時実行性と大規模なトラフィックをサポートしており、OLTP に最適なツールです。
3. インストールに使用されるスペースも大きく異なります。Mysql はインストール後にわずか 152M ですが、Oracle は使用時に特に大きなメモリスペースとその他のマシンのパフォーマンスを占有します。
4. OracleでもMysqlの操作にはいくつかの違いがあります
①主キーMysqlは、テーブルを作成するときに、レコードを挿入するときにテーブルの主キーを自動インクリメントとして指定するだけで済みます。 、レコードの主キー値を指定する必要はありません。Oracle には、レコードを挿入するときに通常使用される自動拡張タイプがありません。シーケンス番号の一部をフィールドに支払うことができますが、ORM フレームワークにはネイティブの主キー生成戦略のみが必要です。
②一重引用符の扱い MYSQLでは二重引用符で文字列を囲むことができますが、ORACLEでは一重引用符でのみ文字列を囲むことができます。文字列を挿入または変更する前に、単一引用符を置換する必要があります。つまり、出現する単一引用符をすべて 2 つの単一引用符に置き換えます。
③ ページめくりの SQL ステートメントの処理。 MYSQL はページめくりの SQL ステートメントを処理し、位置を開始して番号を記録します。これはより複雑です。各結果セットには、その位置を示す ROWNUM フィールドが 1 つだけあり、ROWNUM>80 ではなく、ROWNUM
④ 長い文字列の処理 ORACLE には、長い文字列の処理にも特別な機能があります。 INSERT および UPDATE 中に操作可能な文字列の最大長は 4000 バイト以下です。これより長い文字列を挿入する場合は、フィールドに CLOB タイプを使用し、ORACLE に付属の DBMS_LOB パッケージからメソッドを借用することを検討してください。変更されたレコードを挿入する前に、空でないことと長さを判断する必要があります。空にすることができないフィールド値や長さを超えるフィールド値は警告を発行し、最後の操作に戻る必要があります。 ⑤空文字の扱い MYSQL の空でないフィールドにも空の内容が定義されており、空の内容は許可されません。 MYSQL の NOT NULL に従って ORACLE テーブル構造を定義すると、データのインポート時にエラーが発生します。そのため、データをインポートする際には、NULL文字であるかどうかを判断し、NULL文字である場合は空白文字に変更する必要があります。
⑥ 文字列のあいまい比較は、MYSQLでは「%string%」のようなフィールド名を使用しますが、ORACLEでも「%string%」のようなフィールド名を使用できますが、この方法はインデックスを使用できないため高速ではありません。
⑦Oracle は、トランザクション分離レベル、伝播特性など、ANSII SQL のほとんどの機能を実装しています。この点では、Mysql はまだ比較的優れています

以上がMySQL と Oracle の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート