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

dokumen-dokumen yang mirip
Sejarah(1) Sejarah(2) STRUCTURE QUERY LANGUANGE (1) Definisi SQL

Pengenalan Structured Query Language

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN WEB Semester: 2 MYSQL 200 menit No.: Job: 12 Tgl: Hal.

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

Kontrak Kuliah. Dasar-dasar MySQL. Edi Sugiarto, S.Kom, M.Kom

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

Pertemuan 12 Pengenalan Structured Query Language

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

MODUL 1 Pengenalan MySQL, DDL, DML

Konsep Sistem Informasi B. BAB 2 - SQL Overview

Basis Data. DDL & Aturan Referential

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

KURSUS ONLINE JASA WEBMASTERS

DATA DEFINITION LANGUAGE

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

PENGENALAN SINTAKS DASAR DALAM MySQL

Pertemuan 10. Bahasa Query Terapan

Data Manipulation Language (DML) & Data Control Language (DCL) pada Database

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

By Mrs Imana Malia Kondou, S.T. missimanakondou.wordpress.com

Pertemuan III Oleh: Ilham Rais Arvianto, M.Pd

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

PERANCANGAN FISIK BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

STRUCTURE QUERY LANGUAGE DDL & DML

Perangkat Lunak Pengembangan Web

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

STRUCTURE QUERY LANGUAGE

Praktikum Basis Data 14 Structure Query Language 2

PRAKTIKUM SISTEM INFORMASI MANAJEMEN

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

RANGKUMAN PHP dan MYSQL

LAPORAN TUGAS BASIS DATA I

SQL (STRUCTURED QUERY LANGUAGE)

Structured Query Language

MODUL IV DATA DEFINITION LANGUAGE (DDL)

STRUCTURE QUERY LANGUAGE (SQL)

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

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

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter.

LAPORAN PRAKTIKUM BASIS DATA

Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel

Operasi Dasar MySQL Menggunakan CLI(Command Line Interface)

Contoh SQL Constraint

TUGAS I PRAKTIKUM SISTEM BASIS DATA. Nama: Krisna Pandu Wibowo( )

MODUL 5 INTERNET PROGRAMMING : MySQL

Sistem Basis Data 1. Pertemuan 5 dan 6 Aljabar Relasional dan SQL Rogayah, ST.,MMSI Untuk 3DB01 dan 3DB04

Basis Data Spasial Modul 2

Macam - Macam Perintah Pada SQL

Database Systems: Lab. Actvity 1: Database Design. Merancang Database. Merancang Database. Tipe Tabel MySQL.

MODUL 9 WEB PROGRAMMING : MySQL

Apa itu DDL & DML? Semua perintah SQL dibagi dalam 2 kategori besar sesuai fungsinya, yaitu :

Jobsheet SQL Dasar : Hari Zulianto, ST [Year]

BAHASA QUERY KOMERSIAL

Statement DDL Create database drop database Create table drop table alter table

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML

INTERNET PROGRAMMING DATABASE

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

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL

SISTEM BASIS DATA Pertemuan 11 Structure Query Language DDL - DML


Modul 3. Oleh : Mohammad Sholikin. 1

Pertemuan DDL INDIKATOR. Modul Teori Database Aknela

Praktikum Basis Data (Database Server MySQL) Bekerja Dengan Tabel

Constraint dan Manajemen Data dalam Timezone Berbeda

BEKERJA DENGAN MYSQL. 1.2 Instalasi MySQL Instalasi atau pemasangan basis data MySQL berbeda untuk setiap sistem

Tutorial Tipe Data MySQL

MODUL PENGENALAN MYSQL SMK MAHADHIKA 4 TEKNIK KOMPUTER DAN JARINGAN

SISTEM BASIS DATA. Oleh : Devie Rosa Anamisa

Pengenalan Database Management System MySQL. Pokok Bahasan: Pengenalan DataBase Pembangunan database berbasis Client-Server Dasar-Dasar MySQL

Transact SQL ; DDL 1 st

Pemrograman Web Lanjut 2017

Basis Data I. Pertemuan Ke-10 (SQL Part 1) Noor Ifada.

PERTEMUAN 10 PEMBUATAN TABEL

DATA DEFINITION LANGUAGE : CREATE, DROP, ALTER

Perkenalan SQL. Ada empat macam tipe database yaitu hirarki, jaringan, relasional, dan objek.

Untuk menjalankan Mysql secara konpensional jalankan Mysql.exe pada direktori Mysql\Bin. Akan tampak tampilan sebagai berikut:

IMPLEMENTASI CONSTRAINT UNTUK MENJAMIN KONSISTENSI DAN INTEGRITAS DATA DALAM DATABASE

Structured Query Language

SQL. Lecturer: Mahendra Data, S.Kom


MODUL 7 STRUCTURED QUERY LANGUAGE

MODUL PRAKTIKUM. MODUL I - VII Modul penuntun dan bahan praktikum matakuliah Basis Data

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

MENGENAL SYNTAX DML PADA SQL

BAHASA QUERY KOMERSIAL

Arsitektur Basis Data Oracle

MODUL V DATA MANIPULATION LANGUAGE (DML) 1

JURNAL PRAKTIKUM (LAB. ACTIVITY) PENGOLAHAN BASIS DATA DT022

BASIS DATA TEKNIK INFORMATIKA - ITS 1

Praktikum Basis Data 2017 TE UM

LATAR BELAKANG IBM San Jose Research Laboratory.

STRUCTURE QUERY LANGUAGE ( S Q L ) Jenis SQL 1. Interactive langsung dapat dioperasikan 2. Embedded disisipkan ke dalam sebuah program

Pertemuan 9 Struktur Query Language(SQL)

Untuk mengakses MySQL dengan mode text dari Console (Command Prompt = Microsoft Windows), dapat dilakukan dengan cara : 1.

BAHASA QUERY KOMERSIAL

Data Manipulation Language (DML)

BAB V. Basis Data Darmawan Satyananda 74

Transkripsi:

Sistem Basis Danny Kriestanto, S.Kom., M.Eng SQL Introduction Setelah Membuat ERD dan Model Relasional, what s next? Bagaimana cara membangun entitas dan relationship tersebut agar dapat digunakan? Bagaimana cara memasukkan data-data ke dalam tabel? Bagaimana cara mengambil data-data yang sudah dimasukkan tadi? Jawabannya: gunakan SQL Structured Query Language Structured Query Language (SQL) merupakan bahasa komputer standar yang digunakan untuk komunikasi dengan sistem basis data relasional. Standarisasi SQL didefinisikan oleh American National Standard Institute (ANSI) dan International Standard Organization (ISO). SQL versi terakhir adalah SQL-99 Kategori Utama Bahasa SQL Secara umum, SQL hanya dibagi atas 2 bagian, yakni: DML ( Manipulation Language), yang memperbolehkan proses atau manipulasi obyek basis data. DDL ( Definition Language), yang mendukung definisi atau pembuatan dari obyek basis data seperti tabel, indeks, sequence, dan view. Meskipun pada kenyataannya, beberapa vendor basis data mempunyai lebih dari dua macam ini. Catatan: penggunaan SQL dalam kuliah ini menggunakan SQL yang digunakan pada Oracle. Definition Language DDL memiliki ciri khas tertentu, yaitu perintah-perintah yang menggunakan klausa/statement/pernyataan CREATE,, atau DROP. Sintaks DDL untuk pembuatan tabel: Definition CREATE TABLE nama_tabel ( Language - CREATE nama_kolom1 tipe_data_kolom1 opsi1, ); nama_kolom2 tipe_data_kolom2 opsi2, Dengan: nama_kolom adalah nama dari field yang akan dibuat Tipe_data_kolom adalah tipe data dari kolom tersebut Opsi memiliki beberapa kemungkinan, seperti: primary key, not null, dan lain sebagainya. Opsi dapat diletakkan di bawah, setelah menyebutkan semua nama_kolom dan tipe_data. 1

Definition Language - CREATE CREATE TABLE nama_tabel ( nama_kolom1 tipe_data_kolom1, ); nama_kolom2 tipe_data_kolom2,, PRIMARY KEY (nama_kolom), FOREIGN KEY (nama_kolom) REFERENCES nama_tabel (nama_kolom) Tipe Setiap DBMS memiliki nama tipe data masingmasing, namun secara umumnya ada beberapa tipe data yang wajib ada. String : Tipe data yang diapit oleh tanda petik tunggal atau petik ganda. Yang termasuk tipe data string adalah VARCHAR, VARCHAR2, dll. Numerik : berfungsi untuk menampung nilai numerik, seperti : NUMBER, FLOAT, INTEGER, dll Tanggal : Tanggal merupakan tipe data krusial yang wajib ada di setiap DBMS. Yang termasuk di antaranya adalah DATE, TIMESTAMP, dll. BLOB : Binary Large Object, yang digunakan untuk menampung data-data berukuran besar, seperti image, file, dsb. Setiap DBMS memiliki macam-macam tipe BLOB yang berbeda, termasuk ukuran data maksimum yang dapat ditampungnya. Pada beberapa DBMS ada juga tipe data lain seperti Boolean. String: contoh: Value CHAR(4) Storage Required VARCHAR(4) '' ' ' 4 bytes '' 1 byte 'ab' 'ab ' 4 bytes 'ab' 3 bytes 'abcd' 'abcd' 4 bytes 'abcd' 5 bytes 'abcdefgh' 'abcd' 4 bytes 'abcd' 5 bytes Storage Required Oracle : CHAR: 1-2000 byte; VARCHAR/VARCHAR2 : 1 4000 byte Numerik: (MySQL) Type Storag e (Bytes) Minimum Value Maximum Value TINYINT 1-128 127 0 255 SMALLINT 2-32768 32767 0 65535 MEDIUMINT 3-8388608 8388607 0 16777215 INT 4-2147483648 2147483647 0 4294967295 BIGINT 8-92233720368547758 9223372036854775 07 808 0 18446744073709551 615 Numerik: (Oracle) Type Storage (Bytes) Minimum Value Maximum Value Bilangan Positif 1-22 byte -1 x 10-130 Sepanjang 38 digit 9,99 99 x 10 125 sepanjang 38 digit Bilangan Negatif 1 22 byte 1 x 10-130 sepanjang 38 digit 9.99...9 x 10 125 Sepanjang 38 digit Tanggal: (MySQL) secara default berukuran 1-8 byte Type Storage Zero Value (bytes) DATE 3 '0000-00-00' TIME 3 '00:00:00' DATETIME 8 '0000-00-00 00:00:00' TIMESTAMP 4 '0000-00-00 00:00:00' YEAR 1 0000 Tanggal: (Oracle) Secara default berukuran 7 Byte 2

BLOB: (MySQL) 2 16 2 byte BLOB: (Oracle) berukuran standar hingga maksimum 2 32 1 byte atau sekitar 4GB per record Keterangan: ada berbagai tipe variasi tipe data BLOB yang dapat digunakan sesuai kebutuhan. KEY pada Implementasi Tabel Setiap Key yang diciptakan pada tabel memiliki fungsi tersendiri. FOREIGN KEY Konsep tabel induk dan tabel anak, merujuk pada tabel lain yang memiliki PRIMARY KEY, untuk menjaga integrity constraint. INDEX KEY Untuk mempercepat pencarian. Efek samping: memperlambat proses INSERT, UPDATE, dan DELETE UNIQUE KEY Nilai tiap-tiap record/tupel hanya boleh ada satu. PRIMARY KEY Berfungsi ganda, yakni sebagai referensi dari FOREIGN KEY, sebagai INDEX KEY, dan juga sebagai UNIQUE KEY. Integrity Constraint Merupakan batasan-batasan yang diberikan pada skema basis data, tujuannya untuk menjaga konsistensi data. Klausa-klausa yang termasuk dalam constraint adalah: NOT NULL : kolom tidak boleh bernilai null UNIQUE : kolom hanya memiliki nilai tunggal PRIMARY KEY : identifikasi unik untuk setiap baris pada tabel FOREIGN KEY : hubungan kolom dengan kolom dari tabel referensi CHECK : memberikan suatu kondisi yang bernilai benar Definition Language - CREATE Contoh kasus (on board) slide 4 halaman 28 untuk tabel PEGAWAI dan KLIEN Catatan: Di tabel pegawai masih terdapat tupel nilai ganda, hilangkan redundansinya => primary key. Definition Language - CREATE PEGAWAI KLIEN PEGAWAI_KLIEN No_peg E38 Nama_peg Nina Tono Hadi Id_klien K05 K08 K02 K04 K10 K06 K24 K90 Nama_klien Martini Anton Sarmini Eka Andin Mitha Buyung Indah No_peg E38 E38 Id_klien K05 K08 K02 K04 K10 K06 K24 K90 Alter berfungsi untuk merubah/menambahi/menghapus sesuatu pada obyek yang telah dibuat. Misalnya: menambah kolom memodifikasi kolom memberikan nilai default pada kolom baru menghapus kolom Namun operasi tersebut tidak terbatas hanya pada tabel saja. 3

Perintah dasar untuk menambah kolom tabel: TABLE nama_tabel ADD COLUMN ( nama_kolom tipe_data [DEFAULT ekspresi], nama_kolom tipe_data [DEFAULT ekspresi], ); Perintah untuk modifikasi tabel TABLE nama_tabel MODIFY ( nama_kolom tipe_data [DEFAULT ekspresi] nama_kolom tipe_data [DEFAULT ekspresi] ); PERINTAH untuk menambah PRIMARY KEY TABLE nama_tabel ADD CONSTRAINT nama_kunci PRIMARY KEY (nama_kolom); Perintah untuk menambah foreign key. TABLE nama_tabel ADD CONSTRAINT nama_kunci FOREIGN KEY (nama_kolom_tabel_anak) REFERENCES nama_tabel_induk (nama_kolom_tabel_induk); Perintah untuk menghapus kolom: TABLE nama_tabel DROP (nama_kolom); Merubah nama tabel: RENAME nama_lama TO nama_baru; Menghapus tabel: DROP TABLE nama_tabel opsi; Pada Oracle, opsi terdiri atas perintah CASCADE DELETE dan PURGE CASCADE DELETE untuk ikut menghapus semua integrity constraint PURGE untuk menghapus tabel tanpa dapat di-undo (hilang selamanya) Ringkasan DDL CREATE CREATE SCHEMA / CREATE DATABASE CREATE TABLE CREATE VIEW SCHEMA / DATABASE TABLE VIEW DROP DROP SCHEMA DROP TABLE DROP VIEW CONSTRAINT, contoh: CREATE TABLE FOREIGN KEY REFERENCES TABLE ADD FOREIGN KEY REFERENCES TABLE DROP FOREIGN KEY Manipulation Language Pada dasarnya, perintah DML terdiri hanya atas 4 model dasar, yakni: SELECT, INSERT, UPDATE, DELETE. Namun pada Oracle, SELECT tidak termasuk dalam kategori ini, dan digantikan dengan perintah MERGE. Perintah-perintah ini ini dapat dipautkan dengan perintah dari bahasa pemrograman sehingga dapat dikerjakan lewat event tertentu (penekanan tombol, dsb.) Manipulation Language - INSERT INSERT merupakan perintah untuk memasukkan data ke dalam tabel. Sintaks dasarnya: INSERT INTO nama_tabel (nama_kolom1, nama_kolom2, ) VALUES (nilai1, nilai2, ); Jikalau nama_kolom yang akan di-insert urutannya telah sesuai dengan yang ada pada struktur tabel, nama_kolom tidak perlu disebutkan. Sehingga sintaksnya dapat diperpendek menjadi: INSERT INTO nama_tabel VALUES (nilai1, nilai2, ); Catatan: nilai yang tipe datanya string harus menggunakan tanda petik tunggal yang mengapit nilai tersebut. 4

Manipulation Language - UPDATE UPDATE digunakan untuk mengubah record/tupel yang telah di-insert sebelumnya. Jika tanpa menggunakan syarat, semua tupel akan diganti. Sintaks dasarnya: UPDATE nama_tabel SET nama_kolom = nilai [WHERE nama_kolom operator syarat]; Ada macam-macam tipe operator: Single value: =, <. >, <=, >= Multi value : IN, ALL, ANY Manipulation Language - DELETE Delete digunakan untuk menghapus tupel. Jika tanpa menggunakan syarat, semua data dalam tabel tersebut akan dihapus. Sintaks dasarnya: DELETE FROM nama_tabel [WHERE nama_kolom operator syarat;] Manipulation Language - SELECT Perintah ini digunakan untuk mengambil data dari dalam tabel. Merupakan perintah yang paling sering digunakan jika dibandingkan perintah-perintah SQL yang lain. Struktur dasar sintaks SELECT: SELECT [DISTINCT] nama_kolom1, nama_kolom2, FROM daftar_nama_tabel [WHERE nama_kolom operator syarat [AND/OR nama_kolom2 operator syarat ]] [GROUP BY nama_kolom] [HAVING fungsi_agregasi(nama_kolom) operator syarat] [ORDER BY nama_kolom ASC/DESC]; Ekspresi Aritmetika Operator Deskripsi + Penjumlahan - Pengurangan * Perkalian / Pembagian Urutan Pengerjaan: *, /, +, - Fungsi_agregasi akan dibahas nanti. Operator Perbandingan Operator Arti = Sama dengan > Lebih besar dari >= Lebih besar atau sama dengan < Kurang dari <= Kurang dari atau sama dengan <> Tidak sama dengan!= Tidak sama dengan ^= Tidak sama dengan BETWEEN AND Berada di antara 2 value IN( himpunan ) Yang cocok dengan salah satu yang terdapat dalam set LIKE Yang cocok dengan pola karakter tertentu IS NULL Jika value-nya merupakan nilai null Logika Kondisi Operator Arti AND OR NOT Menghasilkan TRUE apabila kedua komponen benar Menghasilkan TRUE apabila salah satu komponen benar Menghasilkan TRUE apabila kondisinya false 5

Tata Urutan Operator Dari sekian banyak operator yang telah disebutkan sebelumnya, tata urutan pengerjaannya dapat dilihat pada tabel berikut. Urutan Pengerjaan Operator 1 Operator aritmetika 2 Operator penggabungan 3 Operator perbandingan 4 IS [NOT] NULL, LIKE, [NOT] IN 5 [NOT] BETWEEN 6 Kondisi logika NOT 7 Kondisi logika AND 8 Kondisi logika OR 6