この記事では、thinkPHP フレームワークでネイティブ SQL ステートメントを実行する方法を主に紹介し、thinkPHP でのネイティブ SQL ステートメントの実行に関連する操作スキルを例の形式で分析し、クエリ メソッドと実行メソッドの違いを簡単に分析します。必要な友達 次の例を参照してください。
この記事では、thinkPHP フレームワークでネイティブ SQL ステートメントを実行する方法について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
thinkphp でネイティブ SQL ステートメントを実行するにはどうすればよいですか?
$Model = new Model();//或者 $Model = D(); 或者 $Model = M(); $sql = "select * from `order`"; $voList = $Model->query($sql);
Model のメソッドを継承するには、新しい空のモデルが必要です。
#注query はクエリ関数、execute は追加、削除、変更関数です。
属性値のクエリと読み取りの例:$sql = "select * from goods"; $Model = M(); $result = $Model->query($sql); foreach ($result as $k=>$val){ $goods_id = $val["goods_id"]; }tP のモデルはネイティブ SQL 操作をサポートし、クエリと実行の 2 つのメソッドを提供します。なぜネイティブ SQL が 2 つのメソッドを区別する必要があるのかというと、次の 2 つの理由があります。
1. types
query は のクエリに使用され、 はデータ セット を返します。select または findall と同じです。そのため、volist タグを直接使用できます。クエリクエリ結果を出力するためのテンプレート
execute は書き込み操作に使用されます、ステータスまたは影響を受けるレコードの数を返します
2. 読み取りおよび書き込み統計が必要
現在のデータ読み取りおよび書き込み数の統計を容易にするために、データベースの読み取り操作と書き込み操作が分離されています (クエリと実行に対応) ネイティブ SQL の使用は非常に簡単です。たとえば、モデルをインスタンス化する必要さえありません。$Model = new Model(); // 实例化一个空模型次のメソッドは同等です
$Model = D();// 或者 $Model = M(); // 下面执行原生SQL操作 $Model->query('select * from think_user where status=1'); $Model->execute('update think_user set status=1 where id=1');モデルをインスタンス化する場合、影響を受けることなくネイティブ SQL 操作を実行できます。例:
$User = D('User'); $User->query('select * from think_user where status=1'); $User->execute('update think_user set status=1 where id=1');この場合、SQL ステートメントの記述を簡略化できます。例:
$User->query('select * from __TABLE__ where status=1'); $User->execute('update __TABLE__ set status=1 where id=1');システムは自動的に ## を置き換えます。 #__TABLE__
現在のモデルに対応するデータ テーブル 名前と実際のデータ テーブルはモデルによって決まります。 一般に、
ORM や CURD では実装が難しい一部の操作を実装するために、ネイティブ SQL 操作を使用します。さらに、SQL が複雑でなければ、効率とネイティブ SQL の一貫性 運用効率の差は最小限であり、TP 自体の ORM 実装も非常に効率的です。 以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
関連する推奨事項:ThinkPHP5 フレームワークはバッチ クエリを実装するだけです
ThinkPHP3.2 フレームワークは addAll() を使用してバッチを挿入しますデータメソッド
thinkPHP5 でデータベースにコンテンツを追加する方法
以上がthinkPHP フレームワークでネイティブ SQL ステートメントを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。