PHPのSQLを使用して複数のテーブルから削除する

アラン・スミス

そのため、複数のテーブルから行を削除しようとしています。私は次の質問を見ましたが、どれも私の問題を解決していないようです。何をしようとしても、次のエラーが発生し続けます。

致命的なエラー:非オブジェクトのメンバー関数bind_param()の呼び出し

これが私が新しい質問をする前に私を助けようとするために私が見たいくつかの質問です。

MySQLの結合で削除

LEFTJOINを使用した削除

MySQLの複数のテーブルから行を削除する

MySQLは複数のテーブルから行を削除します

基本的に私が作ろうとしているのは、ユーザーが自分のアカウントを削除できるようにする機能です。彼らのアカウントには4つの異なるテーブルの情報があり、各テーブルには共通の「id」がありますが、名前は異なります。

先に進む前に、ユーザーがテーブルの1つに情報を格納していない場合があるかもしれないと言わなければなりません。これがエラーがスローされる理由かどうかわからない

これが私のテーブル構造です:

table users

user_id | firstname | surname 
-------------------------------
 10     | Joe       | Bloggs
 16     | Jane      | Doe


table pets

pet_id  | pet_user_id | pet_name 
-------------------------------
 1      | 10          | Rover
 2      | 16          | Jess

table report

report_id | rep_user_id | rep_content 
-------------------------------
 1        | 10          | Hello World
 2        | 16          | Goodbye World

table user_files

file_id   | file_user_id| file 
-------------------------------
 1        | 10          | agreement.pdf
 2        | 16          | cv.docx

したがって、これらの各テーブルからIDが16のユーザーを削除するとします。以下は私がこれまでに試したことです。

最初:

$stmt = $conn->prepare('DELETE * FROM users, pets, report, user_files WHERE user_id = ?, pet_user_id = ?, rep_user_id = ?, file_user_id = ? ');

2番目:

$stmt = $conn->prepare('DELETE users.*, pets.*, reports.*, user_files.* FROM users LEFT JOIN pets ON pets.pet_user_id=users.user_id LEFT JOIN report ON report.rep_user_id=users.user_id LEFT JOIN user_files ON user_files.user_id=users.user_id WHERE user_id = ?');

第三:

$stmt = $conn->prepare('DELETE users, pets, report, user_files FROM 
  table1 as users 
  INNER JOIN  table2 as pets on users.user_id = pets.pet_user_id
  INNER JOIN  table3 as report on users.user_id=report.rep_user_id
  INNER JOIN  table4 as user_files on users.user_id=user_files.user_id
  WHERE  users.user_id= ?');

?使用してバインドされて$stmt->bind_param('i', $user_id);いる$user_idセッション変数から定義されています。

stefan23

3番目のステートメントは機能するはずですが、左結合を使用して作成します。

次のSQL更新を試してください。

DELETE users, pets, report, user_files 
FROM users
LEFT JOIN pets ON (pets.pet_user_id=users.user_id)
LEFT JOIN report ON (report.rep_user_id=users.user_id)
LEFT JOIN user_files ON (user_files.file_user_id=users.user_id)
WHERE users.user_id=?;

MySQLコンソールでこのステートメント(パラメータ「16」を「user_id」として)を実行して、機能するかどうかを確認する必要があります。

そうでない場合は、バインドされた変数に問題があると思います$user_idの出力を教えていただけますvar_dump($user_id)か?

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

外部キーを使用して複数のテーブルから削除する

分類Dev

SqlCommandを使用して複数のテーブルから削除する

分類Dev

別のテーブルの複数の識別列を使用してテーブルから削除する

分類Dev

PHPを使用してSQLの複数のテーブルからデータを取得する方法

分類Dev

PHPを使用してCSVから複数のテーブルを作成する

分類Dev

PHPを使用してHTMLテーブル/フォームから複数のSQL行を更新する

分類Dev

テーブルから複数の行を削除する(SQL)

分類Dev

SQLテーブルから(複数の列の値に基づいて)重複する行を削除する

分類Dev

SQL を使用してテーブルから複数の型を返す

分類Dev

SQL Server のテーブルから複数のスペースを削除する

分類Dev

SQL を使用して複数のテーブルから共通の値を取得する

分類Dev

phpを使用してMySQLの複数のテーブルから合計値を追加する

分類Dev

MySQLとPHPを使用して複数のjunctionテーブルから取得した情報を表示する

分類Dev

特定の値を使用して、複数のテーブルからレコードを削除します

分類Dev

PostgreSQLとの結合を使用して複数のテーブルからレコードを削除します

分類Dev

PHPとmysqliを使用して複数のMySQLテーブルからデータを取得する

分類Dev

SQLテーブルから複数のレコードを削除する方法

分類Dev

MysqlのJOINを使用して複数のテーブルから行を削除します

分類Dev

MySql:左結合を使用して複数のテーブルから削除

分類Dev

MySql:左結合を使用して複数のテーブルから削除

分類Dev

mysql / phpを使用して複数のテーブルにわたる複数の結合から複数の結果を返す

分類Dev

phpを使用してmysqlデータベースから複数のテーブルから複数の値を取得する効率

分類Dev

RでRvestを使用して、テーブルから複数のヘッダー行を削除します

分類Dev

複数のテーブルから値を選択してテーブルを更新するsql

分類Dev

pdoを使用して複数のテーブルの行を削除する方法

分類Dev

PHP / MYSQLの単一のテーブルから特定の値を使用して、複数の値を含む複数の列をフェッチする方法

分類Dev

phpを使用してテーブルから行を削除する関数

分類Dev

Room SQLITEJOINSを使用して複数のテーブルからクエリを削除します

分類Dev

テーブルから複数の行を削除する

Related 関連記事

  1. 1

    外部キーを使用して複数のテーブルから削除する

  2. 2

    SqlCommandを使用して複数のテーブルから削除する

  3. 3

    別のテーブルの複数の識別列を使用してテーブルから削除する

  4. 4

    PHPを使用してSQLの複数のテーブルからデータを取得する方法

  5. 5

    PHPを使用してCSVから複数のテーブルを作成する

  6. 6

    PHPを使用してHTMLテーブル/フォームから複数のSQL行を更新する

  7. 7

    テーブルから複数の行を削除する(SQL)

  8. 8

    SQLテーブルから(複数の列の値に基づいて)重複する行を削除する

  9. 9

    SQL を使用してテーブルから複数の型を返す

  10. 10

    SQL Server のテーブルから複数のスペースを削除する

  11. 11

    SQL を使用して複数のテーブルから共通の値を取得する

  12. 12

    phpを使用してMySQLの複数のテーブルから合計値を追加する

  13. 13

    MySQLとPHPを使用して複数のjunctionテーブルから取得した情報を表示する

  14. 14

    特定の値を使用して、複数のテーブルからレコードを削除します

  15. 15

    PostgreSQLとの結合を使用して複数のテーブルからレコードを削除します

  16. 16

    PHPとmysqliを使用して複数のMySQLテーブルからデータを取得する

  17. 17

    SQLテーブルから複数のレコードを削除する方法

  18. 18

    MysqlのJOINを使用して複数のテーブルから行を削除します

  19. 19

    MySql:左結合を使用して複数のテーブルから削除

  20. 20

    MySql:左結合を使用して複数のテーブルから削除

  21. 21

    mysql / phpを使用して複数のテーブルにわたる複数の結合から複数の結果を返す

  22. 22

    phpを使用してmysqlデータベースから複数のテーブルから複数の値を取得する効率

  23. 23

    RでRvestを使用して、テーブルから複数のヘッダー行を削除します

  24. 24

    複数のテーブルから値を選択してテーブルを更新するsql

  25. 25

    pdoを使用して複数のテーブルの行を削除する方法

  26. 26

    PHP / MYSQLの単一のテーブルから特定の値を使用して、複数の値を含む複数の列をフェッチする方法

  27. 27

    phpを使用してテーブルから行を削除する関数

  28. 28

    Room SQLITEJOINSを使用して複数のテーブルからクエリを削除します

  29. 29

    テーブルから複数の行を削除する

ホットタグ

アーカイブ