データ挿入を追加
?
1 2 3 4 5 |
$data = [ 'name_cn' => '张三' , 'name_en' => 'jack' , ]; $res = Db::name( 'style' )->insert( $data ); |
データを追加します。
?
1 |
INSERT INTO `tf_style` (`name_cn` , `name_en`) VALUES ( '张三' , 'jack' ) |
tp5はinsertAll
複数のデータを挿入することもできます。
?
1 2 3 4 5 |
$data = [ 'name_cn' => '张三' , 'name_en' => 'jack' , ]; $res = Db::name( 'style' )->insertGetId( $data ); |
挿入されたIDを取得します。
データ更新を変更する
データの更新、使用方法update
。
?
1 2 |
$res = Db::name( 'style' )->where( 'id' ,4)->update([ 'name_cn' => '李四' ]); UPDATE `tf_style` SET `name_cn` = '李四' WHERE `id` = 4; |
返される結果は、影響を受けた行の数です。
?
1 2 3 |
$where = new Where(); $where [ 'id' ] = [ '>' ,2]; $res = Db::name( 'style' )->where( $where )->update([ 'name_cn' => '李四' ]); |
$ whereオブジェクトによる条件付き演算。
?
1 2 |
$where [] = [ 'id' , '>' ,2]; $res = Db::name( 'style' )->where( $where )->update([ 'name_cn' => '王五' ]); |
それも可能です。
主キーは、データデータに直接書き込むことができます。
?
1 |
$res = Db::name( 'style' )->update([ 'name_cn' => '王五' , 'id' =>2]); |
結果は次のとおりです。
?
1 |
UPDATE `tf_style` SET `name_cn` = '王五' WHERE `id` = 2; |
この方法で変更できるデータは1つだけです。
1つのフィールドのみを変更し、setField
メソッドを使用します。
?
1 2 3 |
$res = Db::name( 'style' )->where( 'id' ,2)->setField([ 'name_cn' => '刘备' ]); $res = Db::name( 'style' )->where( 'id' ,2)->setField([ 'name_cn' => '刘备' , 'name_en' => 'LiuBei' ]); UPDATE `tf_style` SET `name_cn` = '刘备' , `name_en` = 'LiuBei' WHERE `id` = 2 |
効果はupdate
ほぼ同じです。
データを削除する
1つ削除してください。
?
1 2 |
$res = Db::name( 'style' )->where( 'id' ,2)-> delete (); $res = Db::name( 'style' )-> delete ( '2' ); |
複数のエントリを削除します。
?
1 |
$res = Db::name( 'style' )-> delete ( '2,3' ); |
文字列にidが書かれています。
?
1 |
$res = Db::name( 'style' )-> delete ([2,3,4]); |
または、ID配列。
クエリデータ選択
?
1 2 3 |
$data = Db::query( 'select * from tf_action' ); $data = Db::query( 'select * from tf_action where id > ? and id < ?' ,[1,10]); $sql = Db::getLastSql(); |
クエリにはクエリを使用します。
削除、追加、変更、実行を使用します。
?
1 |
$data = Db::table( 'tf_action' )->select(); |
ここではテーブルのフルネームが使用されます。
?
1 |
$data = Db::name( 'action' )->select(); |
ここでは、接頭辞が削除されたテーブルの名前が使用されます。
?
1 |
$data = db( 'action' )->select(); |
ヘルパー関数、効果はDb::name
似ています。
しかし、それらはまったく同じではありません。
?
1 |
$data = db( 'action' )->where( 'id' , '>' ,1)->where( 'id' , '<' ,9)->select(); |
複数条件クエリ。
?
1 |
$data = db( 'action' )->where( 'id' , '>' ,20)->whereOr( 'id' , '<' ,9)->select(); |
またはクエリ。
中間条件が空の場合、=を意味します。
?
1 2 3 4 5 6 7 |
$where = new Where(); $where [ 'name' ] = [ 'like' , '%户%' ]; $where [ 'id' ] = [ '>' ,1]; $data = db( 'action' )->where( $where )->select(); $where [] = [ 'name' , 'like' , '%户%' ]; $where [] = [ 'id' , '>' ,1]; $data = db( 'action' )->where( $where )->select(); |
組み合わせクエリ。
?
1 2 3 4 |
$where = new Where(); $where [ 'name' ] = [ 'like' , '%户%' ]; $where [ 'id' ] = [ '>' ,1]; $data = db( 'action' )->where( $where )->limit(2,2)->order( 'id desc' )->select(); |
ページで並べ替えます。
?
1 2 3 4 |
$where = new Where(); $where [ 'name' ] = [ 'like' , '%户%' ]; $where [ 'id' ] = [ '>' ,1]; $data = db( 'action' )->where( $where )->limit(2,2)->order( 'id desc' )->field( 'id,name' )->select(); |
指定されたフィールドをクエリします。
?
1 2 3 4 |
$where = new Where(); $where [ 'name' ] = [ 'like' , '%户%' ]; $where [ 'id' ] = [ '>' ,1]; $data = db( 'action' )->where( $where )->limit(2,2)->order( 'id desc' )->field( 'id aid,name' )->select(); |
エイリアス。
?
1 |
$data = db( 'action' )->where( $where )->field( 'count(*) as count' )->find(); |
システム関数を使用します。
?
1 |
$data = db( 'action' )->where( "name like '%户%' AND id > 1" )->select(); |
文字列を直接書いても大丈夫です。