< Previous 161 Basis Data Integritas Domain, untuk menerapkan integritas pada tingkat Kolom (field) agar nilai yang diisikan pada Kolom (field) tersebut berada di antara nilai-nilai yang diinginkan. Integritas Referential untuk menerapkan integritaspada tingkat Referensi dengan menggunakan Primary Key untuk memastikan sinkronisasi antara “Parent” dan “Child Tables” (antara Primary Key dan Foreign Key). Sebuah Foreign Key tidak dapat dimasukkan ke dalam sebuah tabel, bila Primary Key tidak ada atau belum ada. 6. Constraint Primary Key Primary Key disebut sebagai “Constraint” dengan tujuan untuk menjaga integritas data, yaitu bahwa sebuah Primary Key tidak boleh mempunyai “Duplikat” dan secara otomatis tidak “Null”. Bentuk penulisan Constraint Key secara umum: CONSTRAINT NamaConstraint{PRIMARY KEY (Primary1 [, Primary2 [...] ] ) } Keterangan : Komponen Keterangan NamaConstraint Nama dari constraint Primary1, Primary2 Nama dari masing-masing field yang digunakan sebagai key (kunci) Berikut format penulisan constraint Primary Key pada tabel MHS dengan Primary Key NIM dimana penulisannya diletakkan setelah field NIM dan tipe datanya, yaitu: Create Table MHS ( NIM TEXT(7) Constraint PK_NIM Primary Key, NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME) Penulisan nama Primary Key dengan PK_NIM mempunyai makna PK adalah Primary Key dan NIM adalah nama field kunci. 162 Basis Data Altrernatif lain penulisan Constraint dengan Primary Key NIM dimana constraintnya diletakkan pada bagian terakhir: Create Table MHS ( NIM TEXT(7), NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME, Constraint PK_NAMA Primary Key (NIM) ) Penulisan Primary Key dengan banyak field: Create Table MHS ( NIM TEXT(7), NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME, Constraint PK_MHS Primary Key (NIM, NAMA) ) Sedang bila Anda ingin menambahkan Primary Key pada tabel yang sudah terbentuk tetapi belum mempunyai Primary Key, format penulisannya seperti berikut: Alter Table MHS Add Constraint PK_NIM2 Primary Key (NIM) 7. Constraint Unique Nilai Unique digunakan untuk menjamin bahwa nilai dalam satu field adalah “Tunggal” (tidak mempunyai duplikat). Beberapa perbedaaan antara Constraint Primary Key dan Constraint Unique: Constraint Primary Key Constraint Unique Hanya diperbolehkan menggunakan satu Constraint Primary Key dalam satu tabel. Boleh menggunakan lebih dari satu Constraint Unique dalam satu tabel. Field (kolom) yang berpatisipasi, tidak boleh mengandung nilai NULL. Field (kolom) yang berpatisipasi, boleh mengandung nilai NULL. Format penulisan Constraint Unique secara umum: CONSTRAINT NamaConstraint {UNIQUE (Unique1 [, Unique2 [, …] ] ) } Keterangan : Komponen Keterangan Unique1, Unique2 Nama dari masing-masing field yang dibuat Unique. 163 Basis Data Contoh format penulisan constraint Unique dengan Unique NIM: Create Table MHS ( NIM TEXT(7)Constraint UN_NIM Unique, NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME ) Alternatif lain penulisan Constraint Unique untuk field NAMA: Create Table MHS (NIM TEXT(7), NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME, Constraint UN_NAMA Unique (NAMA) ) Untuk penulisan Constraint Unique dengan multifield: Create Table MHS (NIM TEXT (7), NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME, Constraint UN_MHS Unique (NIM, NAMA) ) Bila ingin menambahkan Constraint Unique pada tabel yang sudah terbentuk tetapi belum mempunyai file Unique: Alter Table MHS Add Constraint UN_NIM Unique (NIM) 8. Constraint Not Null Bentuk penulisan umum Constraint Not Null: NamaField NOT NULL Contoh format penulisan Constraint Not Null dengan field NIM yang dipasang Not Null: Create Table MHS (NIM TEXT(7) Not Null, NAMA TEXT(25), ALAMAT TEXT(40), TGL_LAHIR DATETIME) 164 Basis Data Default penetapan seluruh field yang dibuat pada suatu tabel adalah Null (kosong), artinya Anda diperbolehkan untuk tidak mengisi suatu field, meskipun field tersebut bersifat Unique. Tetapi bila field yang bersangkutan berfungsi sebagai Primary Key, maka field tersebut tidak boleh kosong. 9. Constraint Foreign Key Foreign Key (FK) adalah field pada sebuah tabel yang menunjukan bahwa field tersebut adalah Primary Key pada tabel yang lain. Untuk memperjelas makna perhatikan skema berikut ini. Tabel A Pada skenario di atas, record (173, XXX) pada tabel B tidak dapat dihapus karena referensi dari 173, fild 4 di Tabel A masih ada. Untuk dapat menghapus record tersebut, maka hapus dulu semua record di filed 4 pada tabel A yang mempunyai nilai 173. Foreign Key harus menunjuk ke Primary Key atau Unique pada tabel lain. Format penulisan Constraint Foreign Key: CONSTRAINT NamaConstraint {FOREIGN KEY (Ref1[ , Ref2[ , … ] ] ) REFERENCES TabelForeign [ (Field1Foreign [ , Field2Foreign [ , … ] ] ) ] } Keterangan : 165 Basis Data Komponen Keterangan Ref1, Ref2 Nama dari masing-masing field yang digunakan sebagai key (kunci). TabelForeign Nama tabel yang digunakan sebagai rujukan. Field1Foreign, Field2Foreign Nama field dari tabel rujukan yang digunakan sebagai kunci penghubung dengan tabel yang sedang dibuat. Contoh dari format penulisan constraint Foreign Key pada tabel JUAL dengan Primary Kd_trans dengan tabel rujukan JENIS dengan field kunci Kode. Pertama-tama buat tabel yang digunakan sebagai rujukan yaitu tabel JENIS dengan field Kode dan Nama, seperti pada contoh berikut ini: Create Tabel JENIS (Kode Text(5) Constraint PK_Kode Primary Key, Nama Text(50) ) Selanjutnya bisa dibuat tabel baru dengan nama JUAL dimana tabel ini dibnetuk dengan merujuk tabel yang sudah ada yaitu tabel JENIS. Untuk merujuk digunakan perintah “References” seperti contoh berikut ini: Create Table JUAL (No_Trans Text(7), Tgl_trans Date, Kd_Trans Text(5), Jml_Trans Long, Constraint F_Jual Foreign Key (Kd_Trans) References JENIS (Kode) ) Jika kode barang yang diinputkan pada tabel JUAL tidak ada di tabel JENIS maka proses input data akan ditolak, hal ini dikarenakan nilai dari field “Kd_Trans” sudah direferensikan ke field “Kode” yang ada di tabel JENIS. 166 Basis Data Gambar dibawah ini menjelaskan 7 Pesan yang Menyatakan Pembatalan Proses Input Data pada Tabel JUAL yang Dilakukan dari Datasheet dan Pesan yang Menyatakan Pembatalan Proses Input Data pada Tabel JUAL yang Dilakukan dengan Query Kelebihan pemakaian Constraint Foreign Key adalah pada tabel referensi terdapat tanda plus (+) di paling kiri dari masing-masing recordnya, tanda ini menyatakan bahwa record-record tersebut telah direferensikan ke tabel lain. Lakukan klik pada tanda plus maka akan ditampilkan record-record dari hasil referensi. Gambar dibawah ini menjelaskan Data-data yang Direferensikan ke Kode Barang EL123 c. Rangkuman SQL (Structured Query Language) adalah sebuah bahasa yang digunakan untuk mengakses data dalam software DBMS. Bahasa ini merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini hampir semua server basis data mendukung bahasa ini untuk melakukan pengelolaan datanya. Instruksi – instruksi atau pernyataan SQL dapat dikelompokkan menjadi 5 kelompok DDL, DML, DCL,pengendali transaksi dan pengendali programatik. 167 Basis Data Data Definition Language (DDL merupakan kelompok perintah yang berfungsi untuk mendefinisikan atribut-atribut database, table, atribut (kolom), batasan-batasan terhadap suatu atribut serta hubungan antar table. Yang termasuk dalam kelompok DDL ini adalah : 1) CREATE untuk menciptakan table ataupun indeks 2). ALTER untuk mengubah struktur table 3) DROP untuk menghapus table ataupun indeks. Kode program dalam bahasa SQL untuk membuat tabel, view dan relasi antar tabel dapat dibuat secara oromatis (generate script SQL) dari diagram PDM menggunakan alat bantu software power designer. Hasil dari generate script SQL adalah sebuah file dengan ekstensi (*.sql). Selanjutnya script SQL tersebut dapat di-execute pada DBMS sesuai dengan target database yang telah ditentukan sebelum proses generate script SQL. d. Tugas : Membuat Script SQL Dalam kegiatan ini peserta didik akan melakukan praktikum secara berkelompok, satu kelompok terdiri dari dua sampai tiga orang. Peserta didik akan menuliskan script SQL untuk membangun database relasional sesuai diagram relasi entitas (ERD) pada kegiatan belajar 12. Bacalah seluruh langkah pengamatan dibawah ini kemudian lakukan dengan cermat dan teliti dengan perangkat yang telah disediakan. 1. Bentuk kelompok setiap kelompok terdiri dari dua-tiga orang 2. Berdasarkan hasil kegiatan belajar 12 (dokumen physical data model), dengan menggunakan alat tulis dan kertas pada lembar kerja tulislah script SQL untuk membuat tabel-tabel tersebut. Tulis dan catat hasilnya. 3. Kumpulkan data-data setiap langkah dan analisis data tersebut menggunakan analisis diskriptif. 4. Komunikasikan hasilnya dalam kelompok, buatlah kesimpulan dan laporan sementara. 5. Komunikasikan dan verifikasi hasil kepada guru pembimbing. 6. Lampirkan hasil verifikasi dan pengesahan laporan sementara ke dalam laporan lengkap. 168 Basis Data e. Test Formatif. Dalam test ini setiap peserta didik membaca dengan cermat dan teliti setiap butir soal dibawah ini. Kemudian berdasarkan uraian materi diatas tulislah jawabannya pada lembar jawaban test formatif yang telah disediakan. 1. Sebutkan dan jelaskan secara singkat lima ragam jenis (kelompok) instrukti-instruksi dalam SQL ? 2. Sebutkan dan berikan contoh instruksi –instruksi SQL yang termasuk dalam kelompok DDL (data definition language)ty relasi tersebut.? f. Lembar Jawaban Test Formatif (LJ). LJ- 01 : Ragam jenis (kelompok) instruksi-instruksi dalam SQL. ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................. ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... 169 Basis Data ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... LJ- 02 : Ragam jenis Instruksi DDL SQL dan contohnya .........................................................................................................:........ ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... .........................................................................................................:........ ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... ................................................................................................................... 170 Basis Data g. Lembar Kerja Peserta Didik. Next >