0

これは、実際のクエリの直前にエコーアウトしている完全な SQL クエリ ($query という名前の変数) です。

UPDATE wp_portfolio_items SET caption='This is a caption',item_order=1,image='20130705104136Layer-651.jpg' WHERE id=1; UPDATE wp_portfolio_items SET caption='This is another caption',item_order=2,image='20130705104137photo.JPG' WHERE id=2; 

そのクエリをコピーして phpMyAdmin の SQL タブで実行すると、問題なく実行され、2 つの行が更新されます。ただし、これを WordPress で照会すると、次の WordPress エラーが発生します。

WordPress データベース エラー: [SQL 構文にエラーがあります。'UPDATE wp_portfolio_items SET caption='This is another caption',item_order=2,ima' at line 1 の近くで使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください] UPDATE wp_portfolio_items SET caption='This is a caption',item_order=1,image='20130705104136Layer-651.jpg' WHERE id=1; UPDATE wp_portfolio_items SET caption='This is another caption',item_order=2,image='20130705104137photo.JPG' WHERE id=2;

これを含める必要があるとは思えませんが、とにかく含めます。これは、クエリを実行するコードです。

    if ($query != "") {
        echo $query . "<br><br>";
        $wpdb->show_errors();
        $wpdb->query($query);
        exit;
    }

WordPress がこのクエリで問題を抱えているのに、phpMyAdmin で問題なく実行できる理由はありますか?

4

1 に答える 1