Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cari tahu baris mana yang gagal menambahkan batasan di MySQL

Pertama, periksa apakah tabel Kategori ada di tempat Anda mencoba mengimpor data ini.

jika tabel Kategori ada maka perlu memeriksa bahwa semua id_kategori dalam tabel ini harus ada di tabel Kategori sebagai id.

Opsi yang lebih baik adalah mengimpor tabel kategori pertama dan kemudian tabel ini.

Secara umum, pertama-tama, semua data tabel induk harus diimpor, lalu tabel anak.

Cara kotor seperti di bawah ini yang tidak disarankan-

set foreign_key_checks=0;
import data here;
set foreign_key_checks=1;

Hanya untuk mengetahui baris mana yang menimbulkan masalah-

Kueri di bawah ini akan memberi Anda baris yang bermasalah.

SELECT a.category_id FROM Category_Term a 
  LEFT JOIN Category b ON a.category_id=b.id 
  WHERE b.id IS NULL;

Catatan:Dengan asumsi id_kategori dalam istilah_kategori dan id dalam tabel kategori akan diindeks.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat jika entri tidak ada, jika tidak perbarui?

  2. Tidak dapat mengatur lower_case_table_names di MySQL 8.x di Windows 10

  3. Mengapa 2 baris terpengaruh dalam `INSERT ... ON DUPLICATE KEY UPDATE` saya?

  4. Cara Menemukan Item Daftar pada Posisi Tertentu di MySQL

  5. Ping server MySQL