問題タブ [mysqli-multi-query]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - mysqli マルチクエリでカスタム区切りクエリを実行する方法
次のSQLスクリプトがあり、マルチクエリで実行したい
これを行う方法はありますか?スクリプトから削除DELIMITER $$
して、マルチクエリにDELIMITER ;
置き換え$$
て実行するだけで機能しますか?;
php - var dump outputting bool(false)
mysqli
同じテーブルに挿入するために別のクエリを実行しているデータベースに挿入するときに問題が発生しますが、これを実行すると別のフィールドに挿入さorder_contents
れます選択した画像に挿入する2番目のクエリはbool(false)
、varダンプを実行すると出力され、挿入されませんデータベースに。
見えるように、以下にコードを含めました。
php - mysqli::query および mysqli::execute への呼び出しはエラーを返さないが、データベースで実行されない
DROP TEMPORARY TABLE ステートメントを実行しようとしています。MySQL Workbench を使用してステートメントを実行しましたが、そこで動作します。PHP と MySQL Workbench の両方で同じユーザーとして正常にログインしていることを確認しました。
mysqli::query() と mysqli::prepare の両方を使用してから、mysqli::execute() メソッドを使用してみました。DROP TEMPORARY TABLE ステートメントを実行しようとしても、どちらも機能しません。ただし、INSERT または SELECT ステートメントを実行すると、どちらも機能します。
このコードはエラーを返しませんが、データベースでも実行されません。
ただし、次のコードはデータベースで実行されます。
私は見つけられる限り多くの MySQL と PHP のドキュメントを読んできました。上記のすべてのmysqliメソッドに関するドキュメントを読み、再読しました。そして、mysqli::escape_string() を使用するバリエーションについて読んで試してみましたが、使用するとエラーが返されます。また、さまざまな SQL ステートメントのさまざまなバリエーションを試しました。
簡単に言えば、INSERT ステートメントと SELECT ステートメントはすべて機能します。ただし、DROP TEMPORARY TABLE ステートメントは機能せず、エラーも返されません。私は本当にこれに頭を悩ませています。どんな助けでも大歓迎です!!
php - プリペアド ステートメントと multi_query の両方を使用した mysqli トランザクション
トランザクションで奇妙な問題に直面しています。コードは次のとおりです。
$insertStatement は commit() によって完全に無視されます。この行にコメントすると:
それは完全に機能しますが、準備されたステートメントと multi_query を混在させると何か問題がありますか? $sql
変数には複数の;
分離されたSQLステートメントが含まれているため、マルチクエリが必要です。この問題を防ぐ方法はありますか?
php - multi_query がループ内で実行されない
別のクエリに入れたマルチクエリが実行されません。内部クエリのストアド プロシージャは実行されませんでした。マルチクエリだけではうまく動作していますが、ループ内ではうまくいきません。なぜ InnerQuery がループ内で実行されないのか確認してください。
mysql - 1回のトランザクションでの複数の挿入mysqli php5
user、student、studentdetails の 3 つのテーブルがあります。
ユーザーの主キーはテーブル Student (userid) のフィールドの外部キーであり、学生の主キーはテーブル studentdetails (studentid) のフィールドの外部キーです。
1 回の送信で 1 つのフォームから 3 つのテーブルすべてにデータを挿入する必要があります。SQL スクリプトは次のとおりです。
上記のスクリプトは mysql (phpmyadmin) では機能しますが、php では機能しません。私は理解しています、私は multi_query (??) を使用する必要がありますが、エラーは発生せず、2 つのテーブルに挿入されますが、3 番目のテーブルには挿入されません。間の SELECT ステートメントと関係があるのではないかと思いますか? ここで知恵を絞って、助けていただければ幸いです。事前に感謝します。