Djoni Darmawikarta

dokumen-dokumen yang mirip
Djoni Darmawikarta

Kasus dalam tulisan ini adalah: Merancang database relasional untuk menyimpan data stok barang - ini adalah ruang-lingkupnya (scope)

Contoh SQL Constraint

PERTEMUAN 11 CONSTRAINT. Tujuan Pembelajaran : Memahami definisi Constraint Dapat Membuat Constraint Dapat Melakukan pemeliharaan Constraint

B a s i s D a t a - 1 C H A P T E R. SQL Operasi DML. Copyright 2005 PENS-ITS

Contoh SQL Constraint

MODUL 1. Pembuatan tabel, pendefinisian constraint, export dan import PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

INTEGRITAS DAN KEAMANAN DATA. Gentisya Tri Mardiani, S.Kom., M.Kom

B a s i s D a t a C H A P T E R. SQL Operasi DML. Arif Basofi PENS 2015

Mudafiq Riyan Pratama

Yuafanda Kholfi Hartono

SISTEM BASIS DATA Pertemuan 11 Structure Query Language DDL - DML

STRUCTURE QUERY LANGUAGE DDL & DML

Perangkat Lunak Pengembangan Web

Administrasi Basis Data. Integritas Data. Yoannita

Eksekusi file setup.exe yang ada dalam CD atau folder instalasi oracle.

Basis Data. DDL & Aturan Referential

Oracle Academic Initiative

Konsep Dasar. Relatsional dan RDBMS User dan Schema Database Membuat Tabel dan Mendefinisikan Constraint Input Data ke dalam Tabel

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs.

Basis Data Relational

Tampilan pada Enterprise Manager

Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL

SQL DASAR BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

Agenda SQL. Pemakai SQL. Kemampuan SQL 02/12/2010 STRUCTURED QUERY LANGUAGE (SQL) Structured Query Language (SQL) (Pert. 9)

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

SISTEM BASIS DATA II S A N T I W I D I A N T I

BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL

BAB 5 ANOMALI DAN INTEGRITAS DATA PADA MODEL RELASIONAL

BAB II PEMBUATAN DAN MANAJEMEN TABLE

Modul 2. Database Menggunakan Primary Key, Unique, Auto Increment, Alter-Add dan Alter-Drop. Disusun oleh. Sri Siska Wirdaniyati JURUSAN STATISTIKA

PERTEMUAN 13 SEQUENCE, INDEX & SYNONYM

SISTEM BASIS DATA. Pertemuan 3. Nizar Rabbi Radliya 3 SKS Semester 2 S1 Sistem Informasi

Constraint dan Manajemen Data dalam Timezone Berbeda

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL

Praktikum Basis Data (Database Server MySQL) Bekerja Dengan Tabel

Djoni Darmawikarta

MODUL PRAKTIKUM 04. Database Implementation dengan Perintah SQL

SISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

Oracle Academic Initiative


CONSTRAINT clients_client_num_pk PRIMARY KEY (client_number));

INTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono

Konsep Sistem Informasi B. BAB 2 - SQL Overview

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

INTERNET PROGRAMMING DATABASE

Praktikum Basis Data 2017 TE UM MODUL 8 TRIGGER A. TUJUAN

MODUL 2 PENGENALAN DATA DEFINITION LANGUAGE (DDL) & DATA MANIPULATION LANGUAGE (DML)

Proses normalisasi model data dapat diringkas sebagai berikut: 3. Tentukan atribut yang dimiliki masing-masing entitas.

Menampilkan Data MySql Menggunakan Dreamweaver

OPTIMALISASI QUERY DALAM BASIS DATA MY SQL MENGGUNAKAN INDEX

Aplikasi CRUD Sederhana Dengan PHP dan MySql

MODUL 2. Sequence, Index dan Synonym PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

MODUL IV DATA DEFINITION LANGUAGE (DDL)

Karena VIEW dibentuk tanpa mencantumkan nama kolom baru, maka v1 mewarisi kolom yang yang dipilih pada tabel mahasiswa_xxx.

IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE

MODUL 4 INTERNET PROGRAMMING DATABASE

MODUL 5 INTERNET PROGRAMMING : MySQL

LAPORAN PRAKTIKUM BASIS DATA

Apakah SQL? Membuat basis data dan struktur tabel Input, update, dan delete data dari tabel Membuat query sederhana dan kompleks SQL

Relational Database & Pemodelan Data [Review]

TUGAS PRAKTIKUM SISTEM BASIS DATA

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

DATA DEFINITION LANGUAGE

SISTEM BASIS DATA 2. WAHYU PRATAMA, S.Kom., MMSI.

DESAIN DATABASE. Pertemuan 06 3 SKS

Ini tampilan jika mengklik input dan rubah nilai. Gambar Layar Input dan Rubah Nilai

Praktikum Basis Data 14 Structure Query Language 2

Mahasiswa memahami fungsi-fungsi lain di dalam SQL Mahasiswa memahami tentang operasi agregasi Mahasiswa mampu mengaplikasikan operasi agregasi

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

tampilan ini juga akan dapat terlihat atasan dan pimpinan yang memimpin unit kerja

Tabel dan Key dalam Database Tipe data dan Karakter pada Database. Author : Minarni, S.Kom.,MM

MySQL Full-Text Searching

IMPLEMENTASI MODEL PEMBELAJARAN INTEGRATED PADA PERKULIAHAN PENDIDIKAN ILMU SOSIAL DI FKIP UM METRO

Pertemuan III Oleh: Ilham Rais Arvianto, M.Pd

BAB III METODE PENELITIAN. Pada Bab III dalam Perencanaan Incident Management akan membahas

Modul 3 : Query Penggabungan Tabel

MODUL 9 WEB PROGRAMMING : MySQL

MySQL J A M K E T I G A

DEKLARASI DIRI (PENGENDALI PERUSAHAAN) TERKAIT PERPAJAKAN KEPADA NEGARA MITRA

Introduction to SQL. Database Programming. 2 nd Chapter

Basis Data Spasial Modul 2

Pertemuan 9 Struktur Query Language(SQL)

KURSUS ONLINE JASA WEBMASTERS

Basis Data Terapan. Yoannita, S.Kom

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini:

Rangga Praduwiratna

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

TRIGGER TRIGGER 5/29/2017 HANI IRMAYANTI, S.KOM

Structured Query Language

SISTEM INFORMASI PENGELOLAAN DATA BARANG PADA CV. SINAR SELABUNG

Pertemuan Sistem Informasi SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan

Pertemuan 2 dan 3 : Tujuan Instruksional Khusus :

PERTEMUAN 9 MANIPULASI DATA

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

BAB 3 BAHASA BASIS DATA (DATABASE LANGUAGE)

PERTEMUAN 10 PEMBUATAN TABEL

Basis Data. Structured Query Language (SQL)

Transkripsi:

Key d Pernya di Database Relasional Djoni Darmawikarta djoni_darmawikarta@yahoo.ca Lisensi Dokumen: Seluruh dokumen di IlmuKomputer.Com dapat digunak, dimodifikasi d disebark secara bebas untuk tuju buk komersial (nonprofit), deng syarat tidak menghapus atau merubah atribut penulis d pernyata copyright yg disertak dalam setiap dokumen. Tidak diperbolehk melakuk penulis ulg, kecuali mendapatk ijin terlebih dahulu dari IlmuKomputer.Com. Key didalam database relasional dibutuhk untuk menghubungk satu tabel data deng yg lain. Sebagai contoh (lihat diagram berikut) nomor_pes sebagai key di tabel pes digunak didalam tabel barg_pes untuk mengidentifikasi (menghubungk) pes yg berisi (terdiri dari) barg-barg tersebut. pes nomor_pes tggal_pes 1071 01-JAN-200 1072 0-JUN-200 barg_pes nomor_pesa n nama_bara ng jumla h 1071 Pinsil 100 1071 Penggaris 10 1071 Penghapus 200 1072 Pinsil 500 1072 Pap tulis 50 Untuk mencapai tuju ini (mengidentifikasi/menghubungk), key harus unik didalam tabel. Deng kata lain, nilai data yg ditentuk sebagai key tidak boleh dipakai di order yg lain. Jadi, nomor pes 1071 hya boleh ada disatu order. Secara umum, dpat dikatak, bahwa suatu nilai key hya boleh dipakai disatu baris data (row). Ada sejumlah sifat-sifat penting yg harus dipahami tentg key ini, agar rcg d pemakainya optimum. 1

Seljutnya ak dibahas: Tiga macam key (Primary, Unique, d Foreign), sifat-sifat d penerapnya di Oracle. Agar mudah disimak d praktis, contoh-contoh ak menyertai pembahas. Tiga Macam Key Seperti sudah disinggung diatas, key, baik Primary maupun Unique, haruslah unik. Selain unik, nilai Primary key tidak boleh null (kosong, tidak diketahui, tidak dapat ditentuk); Unique key boleh null. Perlu dipahami, bahwa suatu nilai null tidak pernah sama deng nilai null yg lain, bahk tidak pernah sama deng dirinya sendiri. Jadi, disuatu tabel sejumlah data (row) Unique key-nya boleh lebih dari satu yg, atau semuya, memiliki nilai null. Misalk kita membuat tabel pes deng SQL statement sebagai contoh Unique key, sebagai berikut: CREATE TABLE pes ( nomor_pes VARCHAR2(6) CONSTRAINT nomor_pes_uk UNIQUE, tggal_pes DATE NOT NULL); Kemudi kita masukk dua buah data (baris) sebagai berikut: INSERT INTO pes VALUES (1071, 01-JAN-200 ); INSERT INTO pes (tggal_pes) VALUES ( 0-JUN-200 ); Maka kedua data masuk kedalam tabel. nomor_pes tggal_pesa n 1071 01-JAN-200 0-JUN-200 Tetapi daik nomor_pes adalah Primary key, maka INSERT yg kedua ak gagal. Oracle ak mengeluark pes kesalah (error message): ORA-01400: cnot insert NULL into ("PESANAN"."NOMOR_PESANAN") Key boleh terdiri lebih dari satu kolom data (didalam istilah database relasional, bagi data terkecil disebut kolom (column), seperti nomor_pes dalam contoh kita). Misalk perusaha punya beberapa cabg d nomor pes disatu ktor tidak ada hubung deng nomor 2

pes ktor lain, deng kata lain nomor pes yg sama digunak disemua ktor, maka untuk membedak nomor nomor pes diseluruh cabg ditambahk identitas cabg (misalnya kode_cabg) sebagai bagi dari key. Key yg terdiri lebih dari satu kolom seperti ini disebut composite key (dalam contoh kasus kita composite key adalah nomor_pes d kode_cabg). Secara umum dapat dikatak, bahwa untuk composite key, keuniknya ditinjau dari gabung semua kolom data yg membentuknya. Untuk Unique key, bila salah satu kolom atau lebih didalam composite key bernilai null, nilai kolom lainya yg ada didalam composite key tidak boleh sama; tetapi diperbolehk bila semua kolomnya bernilai null. Memilih d menggunak kolom sebagai key perlu memperhatik atur berikut: Disatu tabel hya boleh ada satu Primary key. Disatu tabel boleh ada lebih dari satu Unique key. Untuk composite key, kolom yg sudah dipakai oleh Primary key atau Unique key boleh digunak lagi untuk Unique key yg lain, asal tidak seluruh kolom. Didalam hubung kedua tabel dalam contoh diatas, tabel pes sering disebut sebagai tabel org-tua (parent), sedg barg_pes disebut tabel ak (child) nomor_pes di tabel barg_pes, yg nilainya mengikuti nilai dari tabel pes, disebut Foreign key dapat dikatak bahwa: Foreign key adalah penghubung kedua table. Foreign key boleh berasal dari Primary d/atau Unique key tabel parent, d boleh composite. Istilah lain yg kadg dipakai adalah migrated key (maksudnya sama deng Foreign key) Database Oracle tidak membolehk data di tabel child dima foreign key-nya belum ada di tabel parent. Misalnya, kita tidak bisa memasukk data barg pes untuk pes bernomor 107 sebelum pes nomor 107 ada didalam tabel pes. Kita buat tabel barg_pes deng Foreign key yg menghubungknya (me-referensi) deng nomor_pes (key di tabel pes) sebagai berikut: CREATE TABLE barg_pes ( nomor_pes VARCHAR2(6) CONSTRAINT nomor_pes_fk REFERENCES pes(nomor_pes), nama_barg VARCHAR2(20), jumlah NUMBER(6));

Foreign key di tabel barg_pes ini kita beri nama sama yaitu nomor_pes. Sedg nama constraint-nya adalah nomor_pes_fk. Kemudi kita masukk dua buah data: INSERT INTO barg_pes VALUES (1071, 'Pensil'); INSERT INTO barg_pes VALUES (107, 'Pap tulis'); SQL statement yg kedua ak gagal. Karena sifat menghalgi inilah, maka key di tabel parent (primary d unique) diistilahk penjaga integritas (integrity constraint) Perlu dicatat bahwa ada jenis constraint lain didalam database relasional, selain pengguna key yg dibahas disini. Tetapi, bila kita menggunak Unique key dari tabel parent sebagai Foreign key di tabel child, Oracle tidak menghalgi adya nilai null didalam Foreign key ini maka ak ada barg_pes yg tidak memiliki pesnya! Maka kita harus berhati-hati bila menggunak Unique key sebagai Foreign key! Foreign key, didalam tabel child boleh digunak sebagai Primary atau Unique key, misalnya karena Foreign key ini ak digunak oleh tabel yg lain sebagai Foreign key (hubung ber-rtai) Efek Samping Oracle otomatis membuat index untuk semua key, primary maupun unique. Index memerluk tempat (didalam disk). Selain membutuhk tempat, index bisa memperlambat respon (performce), karena setiap kali ada data baru maka selain ditabelnya, di-index-nya juga harus ditambahk key dari data baru bersgkut; demiki juga bila kita mengubah nilai key yg sudah ada. (Mengubah nilai key sgat tidak dijurk, salah satu alas adalah karena semua tabel yg terhubung juga harus segera di-update!) Ada teknik-teknik untuk mengi masalah respon d perubah nilai key ini, d Oracle juga menyediak fasilitasnya. (Tetapi tidak dibahas di tulis ini) Sar Pemakai Key Pilih kolom yg tepat, tentuk macam (primary d/atau unique) d jumlahnya, sesuai spesifikasi (peratur pelaksa bisnis d kebutuh datya), untuk menghubungk tabel-tabel didalam database. Terapk deng menggunak fasilitas bersgkut yg tersedia didalam 4

database yg dipakai. Fasilitas key d sifat-sifatnya di Microsoft SQL Server misalnya tidak sama percis deng Oracle. 5