Zend2 Wiki
ホーム
新規
編集
差分
バックアップ
添付
最終更新
一覧
検索
ヘルプ
編集 : Zend/Db/Sql
Zend
Db
Sql
エラー
見出しIDが見つかりませんでした
#contents *Insert [#briuNCF] Zend\Db\Sql\Sqlクラスのinsertメソッドから呼び出される。 **基本的な利用方法 [#EMRsbFQ] #sh(php){{ $sql = new Zend\Db\Sql\Sql($adapter); $insert=$sql->insert(); $insert->into("test"); $insert->values(array("id"=>"1","name"=>"hoge")); echo $sql->getSqlStringForSqlObject($insert); }} INSERT INTO `test` (`id`, `name`) VALUES ('1', 'hoge') ** コンストラクタ [#ulEBVHO] :引数|string|TableIdentifier $table テーブル名を指定する、intoメソッドが優先される #sh(php){$insert=$sql->insert("test");} ** intoメソッド [#5bfgHXP] :引数|string|TableIdentifier $table テーブル名を指定する #sh(php){$insert->into("test");} ** columns [#6tEUBn8] :引数|array $columns カラム名を指定する。 &color(#FF0000){''Zend 2.3現在、columnsメソッドより後にvaluesメソッドを呼び出し、かつ第二引数にself::VALUES_SETを設定するか第二引数を省略した場合、columns設定値が消失する''}; #sh(php){{ $insert->columns(array("id", "name", "value")); }} ** values [#o66wZrF] :引数|array|Select $values string $flag VALUES_MERGE|VALUES_SET を指定、デフォルトはVALUES_SET Insertする値の設定を行う #sh(php){{ $insert->values(array("id"=>"1","name"=>"hoge")); }} ** select [#KMCZP0n] :引数|Select $select valuesメソッドが呼び出される。以下と全く同じである。 #sh(php){$insert->values($select);} ** getRawState [#sXaDmpJ] :引数|string $key table名、columns設定値、values設定値を返す。 #sh(php){{ // テーブル情報を返す $insert->getRawState("table"); // カラム名を返す $insert->getRawState("columns"); // values値を返す $insert->getRawState("values"); // 上記のすべてを連想配列で返す $insert->getRawState(); }} * Select [#8hdU3yM] Zend\Db\Sql\Sqlクラスのselectメソッドから呼び出される。 **基本的な利用方法 [#5ljzdHF] #sh(php){{ $sql = new Zend\Db\Sql\Sql($adapter); $select=$sql->select(); $select->from("test"); $select->columns(array("id"=>"rev_id", "name"=>"rev_name", "value"=>"rev_value")); $select->where(array("name"=>"yamada", "value > 100")); $select->limit(1); echo $sql->getSqlStringForSqlObject($select); }} SELECT `test`.`rev_id` AS `id`, `test`.`rev_name` AS `name`, `test`.`rev_value` AS `value` FROM `test` WHERE `name` = 'yamada' AND value > 100 LIMIT 1 ** コンストラクタ [#U0lUGlM] :引数|null|string|array|TableIdentifier $table テーブル名を指定する ここで指定するとread onlyになり、fromから指定できなくなる ** from [#vHKbmez] :引数|string|array|TableIdentifier $table テーブル名を指定する コンストラクタで指定した場合、指定できない ** quantifier [#wh64NXe] :引数|string|Expression $quantifier DISTINCT|ALL DISTINCT属性を設定するか。 ** columns [#StzSgn0] :引数|array $columns selectするカラム名を指定する 連想配列の場合、''key値がエイリアス名''になる。 #sh(php){$select->columns(array("*"));} `test`.* #sh(php){$select->columns(array("id", "name", "value"));} `test`.`id` AS `id`, `test`.`name` AS `name`, `test`.`value` AS `value` #sh(php){$select->columns(array("id"=>"rev_id", "name"=>"rev_name", "value"=>"rev_value"));} `test`.`rev_id` AS `id`, `test`.`rev_name` AS `name`, `test`.`rev_value` AS `value` ** join [#slAKJ1d] :引数|string|array $name string $on string|array $columns string $type JOIN_*の中から一つ 結合設定 JOIN_INNER、JOIN_OUTER、JOIN_LEFT、JOIN_RIGHTの4種類が指定可能 #sh(php){$select->join("test2", "test.id = test2.id", Zend\Db\Sql\Select::SQL_STAR, Zend\Db\Sql\Select::JOIN_LEFT);} `test2`.* FROM `test` LEFT JOIN `test2` ON `test`.`id` = `test2`.`id` #sh(php){$select->join("test2", "test.id = test2.id", array("id", "name", "age"), Zend\Db\Sql\Select::JOIN_LEFT);} `test2`.`id` AS `id`, `test2`.`name` AS `name`, `test2`.`age` AS `age` FROM `test` LEFT JOIN `test2` ON `test`.`id` = `test2`.`id` ** where [#LrEKQK5] :引数|Where|\Closure|string|array|Predicate\PredicateInterface $predicate string $combination Predicate\PredicateSetで定義されている OP_* の中から一つ Where句を設定 #sh(php){$select->where(array("id"=>1, "name"=>"yamada"));} WHERE `id` = '1' AND `name` = 'yamada' #sh(php){$select->where(array("id"=>1, "name"=>"yamada"), Zend\Db\Sql\Predicate\PredicateSet::OP_OR);} WHERE `id` = '1' OR `name` = 'yamada' Predicate\PredicateInterface #sh(php){{ $nest = $select->where->nest(); $nest->equalTo("name", "yamada"); $nest->OR->equalTo("age", "20"); $nest->unnest(); }} WHERE (`name` = 'yamada' OR `age` = '20') #sh(php){{ $nest = $select->where->nest(); $nest2_1 = $nest->nest(); $nest2_1->equalTo("name", "yamada"); $nest2_1->OR->equalTo("name", "tanaka"); $nest2_1->unnest(); $nest2_2 = $nest->AND->nest(); $nest2_2->equalTo("age", "10"); $nest2_2->OR->equalTo("age", "20"); $nest2_2->unnest(); $nest->unnest(); }} WHERE ((`name` = 'yamada' OR `name` = 'tanaka') AND (`age` = '10' OR `age` = '20')) #sh(php){$select->where->NEST->equalTo("name", "yamada")->OR->equalTo("age", "20")->UNNEST;} WHERE (`name` = 'yamada' OR `age` = '20') #sh(php){{ $select->where->NEST ->NEST ->equalTo("name", "yamada") ->OR->equalTo("name", "tanaka") ->UNNEST ->AND->NEST ->equalTo("age", "10") ->OR->equalTo("age", "20") ->UNNEST ->UNNEST; }} WHERE ((`name` = 'yamada' OR `name` = 'tanaka') AND (`age` = '10' OR `age` = '20')) ** group [#8OTtXtP] :|引数|string|array グループ設定 #sh(php){$select->group("name");} GROUP BY `name` ** having [#aDnoqCD] :引数|Where|\Closure|string|array $predicate string $combination One of the OP_* constants from Predicate\PredicateSet #sh(php){$select->having(array("age"=>10, "weight"=>20));} HAVING `age` = '10' AND `weight` = '20' ** order [#LBspsa8] :引数|string|array $order オーダー設定 #sh(php){$select->order("name DESC");} ORDER BY `name` DESC #sh(php){$select->order("name ASC");} ORDER BY `name` ASC ** limit [#jolzJvg] :引数|int $limit Limit設定 #sh(php){$select->limit(1);} LIMIT 1 ** offset [#zD1URqW] :引数|int $offset Offset設定 #sh(php){$select->offset(3);} OFFSET 3 ** combine [#OlWRQfW] :引数|Select $select string $type string $modifier * Delete [#FY0yK4i] Zend\Db\Sql\Sqlクラスのdeleteメソッドから呼び出される。 **基本的な利用方法 [#lBWhe9H] ** コンストラクタ [#AiHrSi5] :引数|null|string|TableIdentifier $table テーブル名を指定する、fromメソッドが優先される ** from [#8EVuCLJ] :引数|string|TableIdentifier $table テーブル名を指定する **where [#F1VAe0W] [[selectメソッドのwhere>Zend/Db/Sql#LrEKQK5]]を参照のこと。 * Update [#wj5CLPO] Zend\Db\Sql\Sqlクラスのupdateメソッドから呼び出される。 **基本的な利用方法 [#nmLH3Nz] ** コンストラクタ [#IEdT5sD] :引数|null|string|TableIdentifier $table テーブル名を指定 **table [#2Kz2hCu] :引数|string|TableIdentifier $table テーブル名を指定 **set [#EgjEkNU] :引数|array $values 連想配列 string $flag VALUES_*の値 **where [#ufoF0Ek] [[selectメソッドのwhere>Zend/Db/Sql#LrEKQK5]]を参照のこと。
#contents *Insert [#briuNCF] Zend\Db\Sql\Sqlクラスのinsertメソッドから呼び出される。 **基本的な利用方法 [#EMRsbFQ] #sh(php){{ $sql = new Zend\Db\Sql\Sql($adapter); $insert=$sql->insert(); $insert->into("test"); $insert->values(array("id"=>"1","name"=>"hoge")); echo $sql->getSqlStringForSqlObject($insert); }} INSERT INTO `test` (`id`, `name`) VALUES ('1', 'hoge') ** コンストラクタ [#ulEBVHO] :引数|string|TableIdentifier $table テーブル名を指定する、intoメソッドが優先される #sh(php){$insert=$sql->insert("test");} ** intoメソッド [#5bfgHXP] :引数|string|TableIdentifier $table テーブル名を指定する #sh(php){$insert->into("test");} ** columns [#6tEUBn8] :引数|array $columns カラム名を指定する。 &color(#FF0000){''Zend 2.3現在、columnsメソッドより後にvaluesメソッドを呼び出し、かつ第二引数にself::VALUES_SETを設定するか第二引数を省略した場合、columns設定値が消失する''}; #sh(php){{ $insert->columns(array("id", "name", "value")); }} ** values [#o66wZrF] :引数|array|Select $values string $flag VALUES_MERGE|VALUES_SET を指定、デフォルトはVALUES_SET Insertする値の設定を行う #sh(php){{ $insert->values(array("id"=>"1","name"=>"hoge")); }} ** select [#KMCZP0n] :引数|Select $select valuesメソッドが呼び出される。以下と全く同じである。 #sh(php){$insert->values($select);} ** getRawState [#sXaDmpJ] :引数|string $key table名、columns設定値、values設定値を返す。 #sh(php){{ // テーブル情報を返す $insert->getRawState("table"); // カラム名を返す $insert->getRawState("columns"); // values値を返す $insert->getRawState("values"); // 上記のすべてを連想配列で返す $insert->getRawState(); }} * Select [#8hdU3yM] Zend\Db\Sql\Sqlクラスのselectメソッドから呼び出される。 **基本的な利用方法 [#5ljzdHF] #sh(php){{ $sql = new Zend\Db\Sql\Sql($adapter); $select=$sql->select(); $select->from("test"); $select->columns(array("id"=>"rev_id", "name"=>"rev_name", "value"=>"rev_value")); $select->where(array("name"=>"yamada", "value > 100")); $select->limit(1); echo $sql->getSqlStringForSqlObject($select); }} SELECT `test`.`rev_id` AS `id`, `test`.`rev_name` AS `name`, `test`.`rev_value` AS `value` FROM `test` WHERE `name` = 'yamada' AND value > 100 LIMIT 1 ** コンストラクタ [#U0lUGlM] :引数|null|string|array|TableIdentifier $table テーブル名を指定する ここで指定するとread onlyになり、fromから指定できなくなる ** from [#vHKbmez] :引数|string|array|TableIdentifier $table テーブル名を指定する コンストラクタで指定した場合、指定できない ** quantifier [#wh64NXe] :引数|string|Expression $quantifier DISTINCT|ALL DISTINCT属性を設定するか。 ** columns [#StzSgn0] :引数|array $columns selectするカラム名を指定する 連想配列の場合、''key値がエイリアス名''になる。 #sh(php){$select->columns(array("*"));} `test`.* #sh(php){$select->columns(array("id", "name", "value"));} `test`.`id` AS `id`, `test`.`name` AS `name`, `test`.`value` AS `value` #sh(php){$select->columns(array("id"=>"rev_id", "name"=>"rev_name", "value"=>"rev_value"));} `test`.`rev_id` AS `id`, `test`.`rev_name` AS `name`, `test`.`rev_value` AS `value` ** join [#slAKJ1d] :引数|string|array $name string $on string|array $columns string $type JOIN_*の中から一つ 結合設定 JOIN_INNER、JOIN_OUTER、JOIN_LEFT、JOIN_RIGHTの4種類が指定可能 #sh(php){$select->join("test2", "test.id = test2.id", Zend\Db\Sql\Select::SQL_STAR, Zend\Db\Sql\Select::JOIN_LEFT);} `test2`.* FROM `test` LEFT JOIN `test2` ON `test`.`id` = `test2`.`id` #sh(php){$select->join("test2", "test.id = test2.id", array("id", "name", "age"), Zend\Db\Sql\Select::JOIN_LEFT);} `test2`.`id` AS `id`, `test2`.`name` AS `name`, `test2`.`age` AS `age` FROM `test` LEFT JOIN `test2` ON `test`.`id` = `test2`.`id` ** where [#LrEKQK5] :引数|Where|\Closure|string|array|Predicate\PredicateInterface $predicate string $combination Predicate\PredicateSetで定義されている OP_* の中から一つ Where句を設定 #sh(php){$select->where(array("id"=>1, "name"=>"yamada"));} WHERE `id` = '1' AND `name` = 'yamada' #sh(php){$select->where(array("id"=>1, "name"=>"yamada"), Zend\Db\Sql\Predicate\PredicateSet::OP_OR);} WHERE `id` = '1' OR `name` = 'yamada' Predicate\PredicateInterface #sh(php){{ $nest = $select->where->nest(); $nest->equalTo("name", "yamada"); $nest->OR->equalTo("age", "20"); $nest->unnest(); }} WHERE (`name` = 'yamada' OR `age` = '20') #sh(php){{ $nest = $select->where->nest(); $nest2_1 = $nest->nest(); $nest2_1->equalTo("name", "yamada"); $nest2_1->OR->equalTo("name", "tanaka"); $nest2_1->unnest(); $nest2_2 = $nest->AND->nest(); $nest2_2->equalTo("age", "10"); $nest2_2->OR->equalTo("age", "20"); $nest2_2->unnest(); $nest->unnest(); }} WHERE ((`name` = 'yamada' OR `name` = 'tanaka') AND (`age` = '10' OR `age` = '20')) #sh(php){$select->where->NEST->equalTo("name", "yamada")->OR->equalTo("age", "20")->UNNEST;} WHERE (`name` = 'yamada' OR `age` = '20') #sh(php){{ $select->where->NEST ->NEST ->equalTo("name", "yamada") ->OR->equalTo("name", "tanaka") ->UNNEST ->AND->NEST ->equalTo("age", "10") ->OR->equalTo("age", "20") ->UNNEST ->UNNEST; }} WHERE ((`name` = 'yamada' OR `name` = 'tanaka') AND (`age` = '10' OR `age` = '20')) ** group [#8OTtXtP] :|引数|string|array グループ設定 #sh(php){$select->group("name");} GROUP BY `name` ** having [#aDnoqCD] :引数|Where|\Closure|string|array $predicate string $combination One of the OP_* constants from Predicate\PredicateSet #sh(php){$select->having(array("age"=>10, "weight"=>20));} HAVING `age` = '10' AND `weight` = '20' ** order [#LBspsa8] :引数|string|array $order オーダー設定 #sh(php){$select->order("name DESC");} ORDER BY `name` DESC #sh(php){$select->order("name ASC");} ORDER BY `name` ASC ** limit [#jolzJvg] :引数|int $limit Limit設定 #sh(php){$select->limit(1);} LIMIT 1 ** offset [#zD1URqW] :引数|int $offset Offset設定 #sh(php){$select->offset(3);} OFFSET 3 ** combine [#OlWRQfW] :引数|Select $select string $type string $modifier * Delete [#FY0yK4i] Zend\Db\Sql\Sqlクラスのdeleteメソッドから呼び出される。 **基本的な利用方法 [#lBWhe9H] ** コンストラクタ [#AiHrSi5] :引数|null|string|TableIdentifier $table テーブル名を指定する、fromメソッドが優先される ** from [#8EVuCLJ] :引数|string|TableIdentifier $table テーブル名を指定する **where [#F1VAe0W] [[selectメソッドのwhere>Zend/Db/Sql#LrEKQK5]]を参照のこと。 * Update [#wj5CLPO] Zend\Db\Sql\Sqlクラスのupdateメソッドから呼び出される。 **基本的な利用方法 [#nmLH3Nz] ** コンストラクタ [#IEdT5sD] :引数|null|string|TableIdentifier $table テーブル名を指定 **table [#2Kz2hCu] :引数|string|TableIdentifier $table テーブル名を指定 **set [#EgjEkNU] :引数|array $values 連想配列 string $flag VALUES_*の値 **where [#ufoF0Ek] [[selectメソッドのwhere>Zend/Db/Sql#LrEKQK5]]を参照のこと。
ページの更新
差分
プレビュー
キャンセル
スポンサー
ログイン
登録
TITLE
Data is Null!