このセクションに記載されている機能は、MySQL 4.1 に実装されています。MySQL 4.1 には、他にも計画されている機能があります。 See 項1.6.1. 「4.1 で計画されている新機能」。
ストアドプロシージャなど、コード化されるほとんどの新機能は MySQL 5.0 で使用できるようになります。 See 項1.6.2. 「5.0 で計画されている新機能」。
サブクエリと派生テーブルのサポート
サブクエリとは、別のステートメント内にネストされた
SELECT
ステートメントである。派生テーブル(名前のないビュー)とは、別のステートメントの
FROM
節内のサブクエリである。 See
項6.4.2. 「サブクエリ構文」。
速度の向上
準備されたステートメントとパラメータのバインディングによる、より速いバイナリプロトコル。 See 項11.1.4. 「C API のプリペアドステートメント」。
HEAP
テーブルについて
B-TREE
インデックスの作成がサポートされるようになり、正確でない検索の応答時間が大幅に短縮される。
新機能
CREATE TABLE table_name2 LIKE
table_name1
を使用することで、既存のテーブルとまったく同じ構造の新しいテーブルを
1
つのステートメントで作成することができる。
OpenGIS 空間データ型(地理データ)のサポート。 See 章 10. MySQL における空間情報の機能。
SSL 接続を介したレプリケーションを実行することができる。
標準への準拠、移植性、および移行
新しいクライアント/サーバプロトコルにより、1
つの結果だけでなく、複数の警告をクライアントに渡す機能が追加される。これにより、データの一括ロードなどのジョブが追跡しやすくなる。SHOW
WARNINGS
は、最後のコマンドの警告を表示する。
See 項4.6.8.9. 「SHOW WARNINGS | ERRORS
」。
国際化
アプリケーションで各国語を使用するユーザベースの拡大に対応するために、MySQL
ソフトウェアでは、utf8
および ucs2
キャラクタセットによる幅広い Unicode
サポートが提供されるようになった。
カラム、テーブル、およびデータベースごとにキャラクタセットを定義できるようになった。これにより、特に多言語 Web サイトを対象としたアプリケーション設計で高度な柔軟性が実現する。
改善されたこのキャラクタセットサポートについては、章 9. 各国キャラクタセットと Unicode を参照。
使いやすさの向上
よく寄せられる要望に応じて、SQL
ステートメントに関するヘルプ情報を取得するために使用できるサーバベースの
HELP
コマンドを追加した。サーバ側でこの情報を取得できるメリットは、情報が常にその特定のサーババージョンに該当する点である。この情報は
SQL
ステートメントを発行することで参照できるので、任意のクライアントをそれにアクセスするように記述することができる。たとえば、mysql
コマンドラインクライアントはこの機能を使用できるように変更されている。
新しいクライアント/サーバプロトコルでは、1 回の呼び出しで複数のステートメントを発行することができる。 See 項11.1.8. 「C API における複数クエリの実行の取り扱い」。
新しいクライアント/サーバプロトコルでは、複数の結果セットを返すこともできる。これは、たとえば、複数のステートメントを送信した結果として行われることがある(前の項目を参照)。
新しい INSERT ... ON DUPLICATE KEY
UPDATE ...
構文が実装された。この構文を使用すると、INSERT
によって PRIMARY
または
UNIQUE
キー(インデックス)で重複が発生した場合に既存のレコードを更新
することができる。
See 項6.4.3. 「INSERT
構文」。
新しい集約関数
GROUP_CONCAT()
を実装した。この関数によって、グループ化されたレコードのカラムを
1
つの結果文字列に連結する非常に便利な機能が追加される。
See
項6.3.7. 「GROUP BY
節で使用する関数と修飾子」。
このマニュアルのニュースセクションに、機能の詳細な一覧があります。 See 項D.2. 「Changes in release 4.1.x (Alpha)」。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.