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

Apa itu Batasan Kunci Utama dalam Database SQL Server - Tutorial SQL Server / T-SQL Bagian 54

Apa itu Batasan Kunci Utama:

Batasan Kunci Utama dibuat untuk memastikan keunikan catatan/baris. Batasan Kunci Utama dapat dibuat pada satu atau kumpulan kolom selama kolom/kolom tersebut tidak mengizinkan nilai Null.
1) Batasan Kunci Utama membuat Indeks Terkelompok secara default jika belum ada Katakanlah Anda membuat tabel baru dan Anda telah menambahkan kolom dengan Kunci Utama, itu akan membuat indeks berkerumun.
Dalam contoh di bawah ini kami membuat tabel dbo.Pelanggan dan kami telah menambahkan Id Pelanggan sebagai Batasan Kunci Utama. Mari kita periksa jenis indeks yang dibuat.
USE YourDatabaseName
GO

CREATE TABLE dbo.Customer (
    Customerid INT PRIMARY KEY
    ,FName VARCHAR(100)
    ,LName VARCHAR(100)
    ,SSN VARCHAR(10)
    )
 
 Kita dapat meminta tampilan sistem sys.indexes untuk mendapatkan informasi indeks 
SELECT *
FROM sys.indexes
WHERE object_name(object_id) = 'Customer'
 
 Seperti yang Anda lihat bahwa indeks Clustered dibuat karena tidak ada indeks cluster pada tabel ini sebelumnya. Perhatikan nama untuk Clustered Index, ini dihasilkan oleh SQL Server. Itu selalu merupakan ide yang baik untuk memberikan nama yang tepat untuk indeks sesuai dengan konvensi penamaan/Standar yang digunakan perusahaan Anda. 

2) Jika indeks berkerumun sudah dibuat di Kolom, Utama Kunci akan Membuat Indeks Unik Jika indeks berkerumun sudah ada pada kolom/kolom dalam sebuah tabel dan kami mencoba untuk membuat Kunci Utama, itu akan membuat Unik Non-berkelompok.
Mari kita jatuhkan dan buat kembali tabel dbo.Pelanggan. Karena kita tidak dapat membuat Indeks Clustered pada kolom yang menerima nilai Null, kita harus mendefinisikan Kolom Bukan Null.
USE YourDatabaseName
GO
Drop table dbo.Customer
GO

CREATE TABLE dbo.Customer (
    Customerid INT Not Null
    ,FName VARCHAR(100)
    ,LName VARCHAR(100)
    ,SSN VARCHAR(10) Not Null
    )

--Create Clustered Index on SSN Column
CREATE CLUSTERED INDEX IX_Customer_SSN 
    ON dbo.Customer (SSN); 


--Create Primary Key on CustomerID
Alter Table dbo.Customer
Add Constraint Pk_Customer_CustomerId Primary Key(CustomerId)
 
 
 
 Mari kita periksa jenis indeks apa yang dibuat dengan menggunakan tampilan sistem sys.indexes. Harus ada satu Clustered Index seperti yang kita buat di SSN dan harus ada satu nonclustered unik yang harus dibuat oleh Primary Key Constraint.
Apa itu Batasan Kunci Utama di SQL Server - Tutorial SQL Server / TSQL

Video Demo :Apa itu Batasan Kunci Utama di SQL Server dan Cara Membuat Kunci Utama

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server SHOWPLAN_TEXT

  2. Cara Menjatuhkan Batasan di SQL Server (T-SQL)

  3. DATEDIFF() Contoh di SQL Server

  4. Bagaimana cara memperluas nilai yang dipisahkan koma menjadi baris terpisah menggunakan SQL Server 2005?

  5. Apa itu Logis DAN Operator di SQL Server - Tutorial SQL Server / TSQL Bagian 120