Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara menonaktifkan semua Batasan Kunci Asing di Database SQL Server - Tutorial SQL Server / TSQL Bagian 77

Skenario:

Anda bekerja sebagai pengembang SQL Server, Anda perlu menyediakan skrip untuk menonaktifkan semua Batasan Kunci Asing dalam database SQL Server. Ini mungkin skenario di mana Anda perlu memuat data satu kali dan Anda baik-baik saja jika data melanggar integritas referensial.

Solusi:


Mari kita dapatkan daftar Batasan Kunci Asing dari Database SQL Server sebelum kita membuat skrip penonaktifan.

--Get List of Foreign Key Constraints if Enabled or Disabled
    USE YourDatabaseName
    GO
    Select 
    Schema_name(Schema_id) as SchemaName,
    object_name(Parent_object_id) as TableName,
    name as ForeignKeyConstraintName,
    Case When Is_disabled=1 Then 'No'
    ELSE 'Yes' End as IsEnabled
    from sys.foreign_keys
 
 
 
 
 
 
 
 
Cara Memeriksa apakah Batasan Kunci Asing Diaktifkan atau Dinonaktifkan di SQL Server
 
Sekarang mari kita buat skrip untuk Menonaktifkan Batasan Kunci Asing di Basis Data SQL Server

USE YourdatabaseName
go
-- Drop Foreign Key Constraints Script 
SELECT distinct 'ALTER TABLE ' 
+ '['+ Schema_name(FK.schema_id) 
+ '].['+ OBJECT_NAME(FK.parent_object_id) 
+ ']'+ ' NOCHECK  CONSTRAINT ' 
+ '[' + FK.name + ']' AS DisableConstraintQuery
 FROM   sys.foreign_keys AS FK
 where is_disabled=0
 
 
 
 
Cara membuat Script untuk Menonaktifkan Semua Batasan Kunci Asing di Database SQL Server
 

Demo Video :Cara menonaktifkan semua Batasan Kunci Asing di Database SQL Server


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 5 Manfaat Pemantauan Kinerja Basis Data Proaktif

  2. Menghubungkan ke SQL Server LocalDB menggunakan JDBC

  3. Cara memetakan bidang entitas yang namanya adalah kata yang dicadangkan di JPA

  4. Pilih 10 catatan teratas untuk setiap kategori

  5. Apa yang dimaksud dengan kunci baris, halaman, dan tabel? Dan kapan mereka diakuisisi?