Click Here to Search This Site

Sabtu, 02 Juni 2012

Dasar- Dasar SQL dengan Access (Primary Key)


1.5    Primary Key

Primary Key dapat dibuat langsung pada saat kreasi TABEL, atau pada waktu yang lain (kemudian) dengan menggunakan instruksi ALTER.
Primary Key disebut sebagai "constraint" untuk menjaga integritas data, yaitu bahwa sebuah PK tidak boleh mempunyai DUPLIKAT dan otomatis tidak NULL.
Format pembuatan Primary Key adalah:
create table NamaTabel (
     NamaField Tipe CONSTRAINT PK_NamaTabel PRIMARY KEY,
)
Membuat Primary Key pada kolom nopeserta:
CREATE TABLE peserta (
   nopeserta     INT CONSTRAINT PK_peserta PRIMARY KEY,
   nama          CHAR (16),
   jenkel        CHAR (1),
   alamat        CHAR (16),
   kota          CHAR (16),
   instansi      CHAR (12),
   prestasi      INT
)

Perhatikan, bahwa secara konvensi nama Primary Key yang diberikan adalah "PK_" + NamaTabel.
Sebagai alternatif , Primary Key dapat juga diciptakan dengan instruksi seperti di bawah ini dimana primary key adalah NamaField3:
create table NamaTabel (
   NamaField1    Tipe1,
   NamaField2    Tipe2,
   NamaField3    Tipe3,
   NamaField4    Tipe4,
   constraint PK_NamaTabel PRIMARY KEY (NamaField3)
)

Atau jika Primary Key terdiri atas banyak kolom (multiple column) maka constraint dapat dibuat sebagai berikut:
create table NamaTabel (
   NamaField1 Tipe1,
   NamaField2 Tipe2,
   NamaField3 Tipe3,
   NamaField4 Tipe4,
   NamaField4 Tipe5,
   NamaField4 Tipe6,
   NamaField4 Tipe7,
   constraint PK_NamaTabel
     PRIMARY KEY (NamaField3, NamaField2, NamaField7)
)
Contoh:
create table peserta (
   nopeserta     int,
   nama char(16),
   jenkel        CHAR(1),
   alamat        char(26),
   kota char(12),
   instansi      char(12),
   prestasi      int,
   constraint pk_peserta primary_key (nopeserta)
)
Contoh memilih primary key yang lain:
create table peserta (
   nopeserta     int,
   nama char(16),
   jenkel        CHAR(1),
   alamat        char(26),
   kota char(12),
   instansi      char(12),
   prestasi      int,
   constraint pk_peserta primary_key (nama, alamat, kota)
)