1

私はCodeIgniterを使用しており、次のように複数のテーブルを更新するMySQLクエリを作成したいと考えています。

UPDATE TABLE1, TABLE2
SET 
    TABLE1.NAME='Teddy', 
    TABLE2.CLIENT_NOTES = 'Teddy is a good guy' 
WHERE VISITOR.ID = 1

CodeIgniterのdb->update()db-> where()を使用してこれを行うにはどうすればよいですか?これは可能ですか?

これを見てくれてありがとう。よろしく。

4

2 に答える 2

3

まず、次のようにテーブルにエイリアスを指定する必要があります。table1 as t1したがってtable2 as t2、最終的なクエリは次のようになります。

$this->db->set('t1.row','New value');
$this->db->set('t2.row','New value');
$this->db->where('t1.row','Your Condition');
$this->db->where('t2.row','Your Condition');
$this->db->update('table1 as t1, table2 as t2');
于 2013-02-06T07:35:38.623 に答える
1

このようにもっと複雑なものには、$ this-> db-> query()を使用する必要があります

エスケープ、セキュリティなどに関しては違いはありません。ActiveRecordは、さまざまな文字列を1つのクエリ文字列にフォーマットするだけです。

于 2013-02-06T00:39:15.433 に答える