Thinkphp6学習のためのフレームワーク:データベースの基本的な操作

この記事では言及されます:

1.ネイティブクエリ操作は、読み取ります。クエリ()

2.ネイティブクエリ操作は書き込み:(実行、削除/更新/挿入します)

3.クエリビルダ

4.where()関数:他のフィールドに基づいて照会することができます

5.order()、リミット()関数

 


 

フレームアプリ\コンフィグの\ database.phpでは設定されている構成データベースの場合、それは次のようにデフォルト設定されますデータベースに接続されています

データテーブルの一例として示しています。

 


 

1.ネイティブクエリ操作は、読み取ります。クエリ()

パブリック 関数DEMO1()
    { 
        $のSQLが = "` id` = `admin` FROM` userName`を選択:ID" $マップ = [ 'ID' => 1 ]。
        $ RES = Dbと::クエリ($ sqlを$マップ); 
        (ダンプ$ RESを)。// 打印查询结果$ RES 
    }

 


 

2.ネイティブクエリ操作は書き込み:(実行、削除/更新/挿入します)

パブリック 関数DEMO2()
    { 
        $は、SQL = "status` UPDATE =` `SET admin`:ステータス=` id`:IDを" ;
         $地図 = [ 'ID' => 1、 'ステータス' => 0 ];
         $ RES = Dbの::実行($ SQL$地図);
         戻り値が 'が正常に更新'の。$ RES 'レコード'。; 
    }

1から0へのデータテーブルID =ステータス1

 


 

3.クエリビルダ

)(①検索:条件を満足する最初のレコード、単一のレコードを返し、ノーリターンヌルを

// 表():データテーブルを設定
    //フィールドを():クエリのフィールドリスト設定
    パブリック 関数Demo3を()
    { 
        $ RES = Dbと::表( 'ADMIN'  - >フィールド( 'ID、ユーザ名、電話番号'  - >(2)検索; //は、パラメータとして、主キーをサポートしています。WHERE `2 =はid` 
        ダンプ($ RESを); 
    }

 

②select():複数のレコードが条件を満たして返します

パブリック 関数demo4()
    { 
        $ RES = Dbと::表( 'ADMIN'  - >フィールド( 'ID、ユーザ名、電話' // 注:最初のを返す(3、2)を選択し;(選択2 3])アレイ状に配置されなければならない 
            - > SELECT(); // 上に 
        ダンプ($ RES ); 
    }

 


 

他のフィールドに基づいて問い合わせることができる:()関数4

文字列、式、配列:検索条件に主な種類を設定します。

(1)文字列

パブリック 関数demo5()
    { 
        $ RES = Dbと::表( 'ADMIN'  - >フィールド( 'ID、ユーザ名、電話番号')// フィールド()のみ対応するフィールドを返す

            //文字列を。 
            - >( 'ステータス> 0 "  - > (SELECT); 
        ダンプ($ RES ); 
}

 

(2)式

パブリック 関数demo5()
    { 
        $ RES = Dbと::表( 'ADMIN'  - >フィールド( 'ID、ユーザ名、電話番号')// フィールド()のみ対応するフィールドを返す

            2発現@を:推奨 
            - > ( 'ID'、[1,3] 'BETWEEN')// パラメータ形式:フィールド、演算子、値 
            - > SELECT(); 
        ダンプ($ RES ); 
}

 

(3)配列

①連想配列:お問い合わせの同等、AND

パブリック 関数demo5()
    { 
        $ RES = Dbと::表( 'ADMIN'  - >フィールド( 'ID、ユーザ名、電話')// フィールド()は、対応するフィールドを返す

           //①連想配列 
            >ここで、([ ' - ID電話「=> 123 '=> 1、。' ])
             - > ()を選択し、
        ダンプ($ RES ); 
}

SQLステートメント印刷外観((IN)を選択し()は以下の中間コードに挿入されます)

- > fetchSql(

②インデックス付きの配列:バッチクエリ

public function demo5()
    {
        $res = Db::table('admin')
            ->field('id, userName, phone')//field()仅返回对应字段

          //②索引数组
            ->where([
                // ‘0=>’ 索引值可以忽略,默认值
                0 => ['id','between',[1,3]],
                1 => ['status','>',0]
            ])

            ->select();
        dump($res);
}

 


 

5.order(),limit()函数

①单字段排序

//order(),limit()
    public function demo6()
    {
        $res = Db::table('admin')
            ->field('id, userName, phone')

            //单字段排序
            ->order('id', 'desc')//默认升序asc,desc:降序
            ->limit(2,2)//从第2行开始的2条数据,常用于分页查询

            ->select();
        dump($res);
    }

 

②多字段排序,用数组参数

讲单字段排序中order()一行改为以下代码即可

->order(['id'=>'asc', 'phone'=>'desc'])

 

おすすめ

転載: www.cnblogs.com/yi2105/p/11532215.html
おすすめ