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

Ubah tabel untuk memberikan batasan kunci asing

Anda tidak menambahkan batasan dalam pernyataan ini, Anda menambahkan batasans :masing-masing dari dua klausa FOREIGN KEY berarti batasan yang terpisah. Namun, menurut manual , Anda harus dapat menambahkan sebanyak mungkin batasan kunci asing dalam satu pernyataan ALTER TABLE seperlunya. Anda hanya perlu memasukkan ADD sebelum setiap kendala.

Perhatikan bahwa nama batasan berlaku secara individual untuk batasan yang Anda tambahkan, jadi Anda mungkin ingin menentukan CONSTRAINT name untuk kunci asing kedua jika Anda ingin memiliki nama tertentu. Sama dengan ON UPDATE/ON DELETE :mereka berlaku untuk kunci asing yang langsung mendahuluinya.

Jadi, pernyataan yang dikoreksi mungkin terlihat seperti ini:

ALTER TABLE users_role_map

ADD CONSTRAINT FK_users_role_map1
FOREIGN KEY (email) REFERENCES usert(email)
ON UPDATE CASCADE
ON DELETE CASCADE,

ADD CONSTRAINT FK_users_role_map2
FOREIGN KEY (id) REFERENCES rolet(id)
ON UPDATE CASCADE
ON DELETE CASCADE;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. atur ulang kata sandi root dengan konfigurasi mysql yang salah

  2. Aliran udara 1.10.0 melalui Ansible

  3. Apa cara termudah untuk mengekstrak tanggal mulai dan berakhir sprint dari JIRA db?

  4. Cara mengimpor file XML ke tabel database MySQL menggunakan XML_LOAD(); fungsi

  5. Cara terbaik untuk menyimpan permintaan pencarian pengguna di ElasticSearch?