# Mysql_xdevapi

# はじめに

この拡張モジュールは、MySQLドキュメントストアに X DevAPI 経由でアクセスできるようにします。 X DevAPI は、複数の MySQLコネクタ によって提供されている、共通のAPIです。 これらのコネクタは、リレーショナルなテーブルだけでなく、JSONで表現されたドキュメントのコレクションに対しても、 CRUDスタイルの操作を持つAPIを通して簡単にアクセスできます。

X DevAPI は Xプロトコルを使っています。 これは MySQL 8.0 サーバーの、新世代のクライアント-サーバープロトコルです。

MySQLドキュメントストアに関する一般的な情報については、 MySQLマニュアル の » MySQL Document Store の章を参照ください。

- インストール/設定
  - 要件
  - インストール手順
  - 実行時設定
  - ソースコードからビルド / コンパイルする
- 定義済み定数
- 変更履歴
- 例
- Mysql_xdevapi 関数
  - expression — プリペアドステートメントの変数をパラメータとしてバインドする
  - getSession — MySQL サーバーに接続する
- mysql_xdevapi\BaseResult — BaseResult クラス
  - BaseResult::getWarnings — 直近の操作の警告を取得する
  - BaseResult::getWarningsCount — 直近の操作から発生した警告の数を取得する
- mysql_xdevapi\Client — クライアントクラス
  - mysql_xdevapi\Client::close — クライアントの接続を閉じる
  - Client::__construct — Client のコンストラクタ
  - Client::getClient — クライアントのセッションを取得する
- mysql_xdevapi\Collection — Collection クラス
  - Collection::add — コレクションにドキュメントを追加する
  - Collection::addOrReplaceOne — コレクションのドキュメントを追加または置換する
  - Collection::__construct — Collection のコンストラクタ
  - Collection::count — ドキュメントの数を取得する
  - Collection::createIndex — コレクションにインデックスを作成
  - Collection::dropIndex — コレクションのインデックスを削除
  - Collection::existsInDatabase — コレクションがデータベースに存在するかをチェックする
  - Collection::find — ドキュメントを検索する
  - Collection::getName — コレクションの名前を得る
  - Collection::getOne — ドキュメントをひとつ取得
  - Collection::getSchema — スキーマオブジェクトを得る
  - Collection::getSession — セッションオブジェクトを取得
  - Collection::modify — コレクションのドキュメントを変更する
  - Collection::remove — コレクションを削除する
  - Collection::removeOne — コレクションからドキュメントをひとつ削除する
  - Collection::replaceOne — コレクションのドキュメントをひとつ置き換える
- mysql_xdevapi\CollectionAdd — CollectionAdd クラス
  - CollectionAdd::__construct — CollectionAdd のコンストラクタ
  - CollectionAdd::execute — ステートメントを実行する
- mysql_xdevapi\CollectionFind — CollectionFind クラス
  - CollectionFind::bind — クエリのプレースホルダーに値をバインドする
  - CollectionFind::__construct — CollectionFind のコンストラクタ
  - CollectionFind::execute — ステートメントを実行する
  - CollectionFind::fields — ドキュメントのフィールドのフィルタを設定する
  - CollectionFind::groupBy — グループ化の条件を設定する
  - CollectionFind::having — 集約関数の条件を設定する
  - CollectionFind::limit — 返されるドキュメントの数を限定する
  - CollectionFind::lockExclusive — Execute operation with EXCLUSIVE LOCK
  - CollectionFind::lockShared — SHARED LOCK 付きで操作を実行する
  - CollectionFind::offset — 返される要素の数から、与えられた数をスキップする
  - CollectionFind::sort — ソート条件を設定する
- mysql_xdevapi\CollectionModify — CollectionModify クラス
  - CollectionModify::arrayAppend — 配列のフィールドに要素を追加する
  - CollectionModify::arrayInsert — 配列のフィールドに要素を挿入する
  - CollectionModify::bind — クエリのプレースホルダーに値をバインドする
  - CollectionModify::__construct — CollectionModify のコンストラクタ
  - CollectionModify::execute — 変更の操作を実行する
  - CollectionModify::limit — 変更されるドキュメントの数を限定する
  - CollectionModify::patch — document にパッチを当てる
  - CollectionModify::replace — ドキュメントのフィールドを置き換える
  - CollectionModify::set — ドキュメントの属性を設定する
  - CollectionModify::skip — 要素をスキップする
  - CollectionModify::sort — ソート条件を設定する
  - CollectionModify::unset — ドキュメントのフィールドの値を削除する
- mysql_xdevapi\CollectionRemove — CollectionRemove クラス
  - CollectionRemove::bind — プレースホルダーに値をバインドする
  - CollectionRemove::__construct — CollectionRemove のコンストラクタ
  - CollectionRemove::execute — 削除操作を実行する
  - CollectionRemove::limit — 削除するドキュメントの数を限定する
  - CollectionRemove::sort — ソート条件を設定する
- mysql_xdevapi\ColumnResult — ColumnResult クラス
  - ColumnResult::__construct — ColumnResult のコンストラクタ
  - ColumnResult::getCharacterSetName — キャラクタセットを取得する
  - ColumnResult::getCollationName — 照合順序名を取得する
  - ColumnResult::getColumnLabel — カラムのラベルを取得する
  - ColumnResult::getColumnName — カラム名を取得する
  - ColumnResult::getFractionalDigits — カラムの小数の桁数を取得する
  - ColumnResult::getLength — カラムのフィールドの長さを取得する
  - ColumnResult::getSchemaName — スキーマ名を取得する
  - ColumnResult::getTableLabel — テーブルラベルを取得する
  - ColumnResult::getTableName — テーブル名を取得する
  - ColumnResult::getType — カラムの型を取得する
  - ColumnResult::isNumberSigned — 符号付きの型かどうかを調べる
  - ColumnResult::isPadded — パディングされているかを調べる
- mysql_xdevapi\CrudOperationBindable — CrudOperationBindable インターフェイス
  - CrudOperationBindable::bind — プレースホルダーに値をバインドする
- mysql_xdevapi\CrudOperationLimitable — CrudOperationLimitable インターフェイス
  - CrudOperationLimitable::limit — 結果を限定する
- mysql_xdevapi\CrudOperationSkippable — CrudOperationSkippable インターフェイス
  - CrudOperationSkippable::skip — スキップする操作の数
- mysql_xdevapi\CrudOperationSortable — CrudOperationSortable インターフェイス
  - CrudOperationSortable::sort — 結果をソートする
- mysql_xdevapi\DatabaseObject — DatabaseObject インターフェイス
  - DatabaseObject::existsInDatabase — オブジェクトがデータベースに存在するかをチェックする
  - DatabaseObject::getName — オブジェクトの名前を取得する
  - DatabaseObject::getSession — セッションの名前を取得する
- mysql_xdevapi\DocResult — DocResult クラス
  - DocResult::__construct — DocResult のコンストラクタ
  - DocResult::fetchAll — 全ての行を取得する
  - DocResult::fetchOne — 一行取得する
  - DocResult::getWarnings — 直近の操作から発生した警告を取得する
  - DocResult::getWarningsCount — 直近の操作で発生した警告の数を取得する
- mysql_xdevapi\Exception — Exception クラス
- mysql_xdevapi\Executable — Executable インターフェイス
  - Executable::execute — ステートメントを実行する
- mysql_xdevapi\ExecutionStatus — ExecutionStatus クラス
  - ExecutionStatus::__construct — ExecutionStatus のコンストラクタ
- mysql_xdevapi\Expression — Expression クラス
  - Expression::__construct — Expression のコンストラクタ
- mysql_xdevapi\Result — Result クラス
  - Result::__construct — Result のコンストラクタ
  - Result::getAffectedItemsCount — 影響を受けた行数を得る
  - Result::getAutoIncrementValue — 自動インクリメントされた値を取得する
  - Result::getGeneratedIds — 生成された id を取得する
  - Result::getWarnings — 直近の操作から発生した警告を取得する
  - Result::getWarningsCount — 直近の操作から生じた警告の数を取得する
- mysql_xdevapi\RowResult — RowResult クラス
  - RowResult::__construct — RowResult のコンストラクタ
  - RowResult::fetchAll — 結果セットから全ての行を取得する
  - RowResult::fetchOne — 結果セットから行を取得する
  - RowResult::getColumnsCount — カラムの数を取得する
  - RowResult::getColumnNames — 全てのカラム名を取得する
  - RowResult::getColumns — カラムのメタデータを取得する
  - RowResult::getWarnings — 直近の操作から生じた警告を取得する
  - RowResult::getWarningsCount — 直近の操作から生じた警告の数を取得する
- mysql_xdevapi\Schema — Schema クラス
  - Schema::__construct — Schema のコンストラクタ
  - Schema::createCollection — スキーマにコレクションを追加する
  - Schema::dropCollection — スキーマからコレクションを削除する
  - Schema::existsInDatabase — データベースに存在するかをチェックする
  - Schema::getCollection — スキーマからコレクションを取得する
  - Schema::getCollectionAsTable — コレクションをテーブルオブジェクトとして取得する
  - Schema::getCollections — スキーマに属する全てのコレクションを取得する
  - Schema::getName — スキーマの名前を取得する
  - Schema::getSession — スキーマのセッションを取得する
  - Schema::getTable — スキーマのテーブルを取得する
  - Schema::getTables — スキーマのテーブルを取得する
- mysql_xdevapi\SchemaObject — SchemaObject インターフェイス
  - SchemaObject::getSchema — スキーマオブジェクトを得る
- mysql_xdevapi\Session — Session クラス
  - Session::close — セッションを閉じる
  - Session::commit — トランザクションをコミットする
  - Session::__construct — Session のコンストラクタ
  - Session::createSchema — 新しいスキーマを作成する
  - Session::dropSchema — スキーマを削除します
  - Session::generateUUID — 新しいUUIDを取得する
  - Session::getDefaultSchema — デフォルトのスキーマ名を取得する
  - Session::getSchema — 新しいスキーマオブジェクトを取得する
  - Session::getSchemas — スキーマを取得する
  - Session::getServerVersion — サーバーのバージョンを取得する
  - Session::listClients — クライアントの一覧を取得する
  - Session::quoteName — クォートを追加する
  - Session::releaseSavepoint — 設定されたセーブポイントをリリースする
  - Session::rollback — トランザクションをロールバックする
  - Session::rollbackTo — セーブポイントまでトランザクションをロールバックする
  - Session::setSavepoint — セーブポイントを作成する
  - Session::sql — SQLクエリを作成する
  - Session::startTransaction — トランザクションを開始する
- mysql_xdevapi\SqlStatement — SqlStatement クラス
  - SqlStatement::bind — ステートメントのパラメータをバインドする
  - SqlStatement::__construct — SqlStatement のコンストラクタ
  - SqlStatement::execute — 操作を実行する
  - SqlStatement::getNextResult — 次の結果を取得する
  - SqlStatement::getResult — 結果を取得する
  - SqlStatement::hasMoreResults — さらに結果があるかを調べる
- mysql_xdevapi\SqlStatementResult — SqlStatementResult クラス
  - SqlStatementResult::__construct — SqlStatementResult のコンストラクタ
  - SqlStatementResult::fetchAll — 結果セットから全行取得する
  - SqlStatementResult::fetchOne — 単一の行を取得する
  - SqlStatementResult::getAffectedItemsCount — 影響を受けた行数を取得する
  - SqlStatementResult::getColumnsCount — カラムの数を取得する
  - SqlStatementResult::getColumnNames — カラム名を取得する
  - SqlStatementResult::getColumns — カラムを取得する
  - SqlStatementResult::getGeneratedIds — 生成された id を取得する
  - SqlStatementResult::getLastInsertId — 最後に挿入されたidを取得する
  - SqlStatementResult::getWarnings — 直近の操作から発生した警告を取得する
  - SqlStatementResult::getWarningsCount — 直近の操作で発生した警告の数を取得する
  - SqlStatementResult::hasData — 結果がデータを持っているかを調べる
  - SqlStatementResult::nextResult — 次の結果を取得する
- mysql_xdevapi\Statement — Statement クラス
  - Statement::__construct — Statement のコンストラクタ
  - Statement::getNextResult — 次の結果を取得する
  - Statement::getResult — 結果を取得する
  - Statement::hasMoreResults — さらに結果があるかを調べる
- mysql_xdevapi\Table — Table クラス
  - Table::__construct — Table のコンストラクタ
  - Table::count — 行の数を取得する
  - Table::delete — テーブルから行を削除する
  - Table::existsInDatabase — テーブルがデータベースに存在するかをチェックする
  - Table::getName — テーブル名を取得する
  - Table::getSchema — テーブルスキーマを取得する
  - Table::getSession — テーブルを操作するためのセッションを取得する
  - Table::insert — テーブルに行を挿入する
  - Table::isView — テーブルがビューかどうかを調べる
  - Table::select — テーブルから行を選択する
  - Table::update — テーブルの行を更新する
- mysql_xdevapi\TableDelete — TableDelete クラス
  - TableDelete::bind — delete のクエリパラメータをバインドする
  - TableDelete::__construct — TableDelete のコンストラクタ
  - TableDelete::execute — delete文を実行する
  - TableDelete::limit — 削除する行を限定する
  - TableDelete::orderby — 削除の際のソート条件を設定する
  - TableDelete::where — 削除時の検索条件を設定する
- mysql_xdevapi\TableInsert — TableInsert クラス
  - TableInsert::__construct — TableInsert クラスのコンストラクタ
  - TableInsert::execute — insert クエリを実行する
  - TableInsert::values — 挿入する行の値を追加する
- mysql_xdevapi\TableSelect — TableSelect クラス
  - TableSelect::bind — select のクエリパラメータをバインドする
  - TableSelect::__construct — TableSelect のコンストラクタ
  - TableSelect::execute — select ステートメントを実行する
  - TableSelect::groupBy — select 時のグループ化の条件を設定する
  - TableSelect::having — select 句の having 条件を設定する
  - TableSelect::limit — 選択される行の数を限定する
  - TableSelect::lockExclusive — EXCLUSIVE LOCK を実行する
  - TableSelect::lockShared — SHARED LOCK を実行する
  - TableSelect::offset — スキップするoffsetを設定する
  - TableSelect::orderby — select 文のソート条件を設定する
  - TableSelect::where — select 文の検索条件を設定する
- mysql_xdevapi\TableUpdate — TableUpdate クラス
  - TableUpdate::bind — update のクエリパラメータをバインドする
  - TableUpdate::__construct — TableUpdate のコンストラクタ
  - TableUpdate::execute — update クエリを実行する
  - TableUpdate::limit — 更新する行の数を限定する
  - TableUpdate::orderby — ソート条件を設定する
  - TableUpdate::set — 更新されるフィールドを追加する
  - TableUpdate::where — 検索フィルタを設定する
- mysql_xdevapi\Warning — Warning クラス
  - Warning::__construct — Warning のコンストラクタ

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open