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

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

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

PRAKTIKUM SISTEM INFORMASI MANAJEMEN

Basis Data II. Pertemuan Ke-6 (Function) Noor Ifada

Pengenalan Structured Query Language

Basis Data II. Pertemuan Ke-8 (Views & Users Authorisation) Noor Ifada S1 Teknik Informatika - Unijoyo 1

Basis Data I. Pertemuan Ke-11 (SQL Part 2) Noor Ifada.

Basis Data II. Pertemuan Ke-2 (Review Data Manipulation Language [DML]) Noor Ifada

Tutorial Tipe Data MySQL

Basis Data II. Pertemuan Ke-7 (Union dan Join) Noor Ifada S1 T. Informatika - UTM (2012) 1

Basis Data II. Pertemuan Ke-9 dan ke-10 (Stored Procedure dan Trigger) Noor Ifada S1 T. Informatika - UTM (2012) 1

Pertemuan 12 Pengenalan Structured Query Language

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

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

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

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

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

Basis Data I. Pertemuan Ke-4 & ke-5 (Model Relasional Part 1) Noor Ifada.

Perangkat Lunak Pengembangan Web

MODUL 1 Pengenalan MySQL, DDL, DML

RANGKUMAN PHP dan MYSQL

PENGENALAN SINTAKS DASAR DALAM MySQL

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

Pemrograman Basis Data Berbasis Web

KURSUS ONLINE JASA WEBMASTERS

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

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

Pertemuan III Oleh: Ilham Rais Arvianto, M.Pd

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

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

DATA DEFINITION LANGUAGE

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

STRUCTURE QUERY LANGUAGE

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

Introduction to SQL. Database Programming. 2 nd Chapter

STRUCTURE QUERY LANGUAGE (SQL)

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

BAB II PEMBUATAN DAN MANAJEMEN TABLE

Jenis Data, Kolom, Operator dan Fungsi

MODUL III STRUCTURED QUERY ANGUAGE (SQL)

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

TUGAS I VIEWS BASIS DATA II

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

SQL MYSQL. Pak Guru Eka 1

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

SISTEM BASIS DATA Pertemuan 11 Structure Query Language DDL - DML

MySQL Databases. Dasar-dasar MySQL dan Implementasi MySQL kedalam pemrograman PHP. Jakarta, 16 April 2011 Oleh: M. Awaludin, S.Kom

Operasi Dasar MySQL Menggunakan CLI(Command Line Interface)

Database Management System. Program yang memungkinkan item-item dalam suatu database disusun, diolah dan diperbaharui

Konsep Sistem Informasi B. BAB 2 - SQL Overview

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

SQL (STRUCTURED QUERY LANGUAGE)

MODUL 7 STRUCTURED QUERY LANGUAGE

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

UNIVERSITAS GUNADARMA

LAPORAN PRAKTIKUM PENGANTAR TEKNOLOGI INFORMASI DATABASE

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

Pertemuan 10. Bahasa Query Terapan

Basis Data. DDL & Aturan Referential

Modul 3. Oleh : Mohammad Sholikin. 1

LAPORAN PRAKTIKUM MODUL 1 PENGENALAN MYSQL

P - 7 Pembahasan UTS PSIK V

STRUCTURE QUERY LANGUAGE DDL & DML

Jobsheet SQL Dasar : Hari Zulianto, ST [Year]

Praktikum Basis Data (Database Server MySQL) Bekerja Dengan Tabel

Praktikum Basis Data 14 Structure Query Language 2

Praktikum Sistem Basis Data MYSQL. Gentisya Tri Mardiani, S.Kom

PERTEMUAN 4-5 PENGELOLAAN DATABASE, TABEL, DAN INDEX

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

Program Studi: Manajemen Bisnis Telekomunikasi & Informatika Mata Kuliah: Data Management Oleh: Yudi Priyadi. (Structure of The Database Language)

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

TUGAS PRAKTIKUM SISTEM BASIS DATA

Constraint dan Manajemen Data dalam Timezone Berbeda

SQL (Structure Query Language) Gentisya Tri Mardiani, S.Kom

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

PRAKTIKUM SISTEM BASISDATA

BASIS DATA TEKNIK INFORMATIKA - ITS 1

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

PRAKTIKUM SISTEM BASISDATA. Disusun Oleh : Anggi Nurcahyo ( )

Macam - Macam Perintah Pada SQL


SQL (Structured Query Language)

Contoh SQL Constraint

3. DEFINISI Istilah-istilah dalam Prosedur Operasional Baku ini dapat dilihat pada Kamus Istilah ICT DKSI IPB. 4. PROSEDUR

SQL Lanjut. Modifikasi Database. Versi 2

Nama : Parisaktiana Fathonah NIM : Kelas : Prak Sistem Basis Data TI-2 B malam

Structured Query Language

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

Syntax Syntax SQL. Untuk lebih jelasnya dapat dilihat sebagai berikut : 1. DDL (Definition Data Language) a. CREATE

Intro : Structure Query Language [SQL]

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

PERINTAH DASAR MySQL

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

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

Sistem Basis Data. Prepared by LittleRadita STMIK- AUB Surakarta

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

Praktikum Sistem Basis Data MYSQL. Gentisya Tri Mardiani, S.Kom., M.Kom

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

Transkripsi:

Basis Data I Pertemuan Ke-10 (SQL Part 1) Noor Ifada noor.ifada@if.trunojoyo.ac.id 1

Sub Pokok Bahasan Structured Query Language (SQL) Tipe Data Basisdata Tennis: CDM dan PDM Constraint Contoh Data Data Definition Language (DDL) Data Manipulation Language (DML) 2

Structured Query Language (SQL) Bahasa standar yang digunakan untuk memanipulasi basisdata relasional Terdiri dari: Data Definition Language (DDL): CREATE tables, indexes, views, Establish primary/foreign keys, DROP / ALTER tables... Data Manipulation Language (DML): INSERT / UPDATE / DELETE, SELECT... Data Control Language (DCL): COMMIT / ROLLBACK work, GRANT / REVOKE... 3

Tipe Data Tipe Data NUMERIK Tipe Data STRING Tipe Data DATE & TIME 4

Tipe Data: Numerik BIT A bit-field, from 1 to 64 bits wide. (Prior to MySQL 5 BIT was functionally equivalent to TINYINT) BIGINT Integer value, supports numbers from -9223372036854775808 to 9223372036854775807 (or 0 to 18446744073709551615 if UNSIGNED) BOOLEAN (or BOOL) Boolean flag, either 0 or 1, used primarily for on/off flags DECIMAL (or DEC) Floating point values with varying levels of precision DOUBLE Double-precision floating point values FLOAT Single-precision floating point values 5

Tipe Data: Numerik (contd-2) INT (or INTEGER) Integer value, supports numbers from -2147483648 to 2147483647 (or 0 to 4294967295 if UNSIGNED) MEDIUMINT Integer value, supports numbers from -8388608 to 8388607 (or 0 to 16777215 if UNSIGNED) REAL 4-byte floating point values SMALLINT Integer value, supports numbers from -32768 to 32767 (or 0 to 65535 if UNSIGNED) TINYINT Integer value, supports numbers from -128 to 127 (or 0 to 255 if UNSIGNED) 6

Tipe Data: String CHAR Fixed-length string from 1 to 255 chars long. Its size must be specified at create time, or MySQL assumes CHAR(1) ENUM Accepts one of a predefined set of up to 64K strings LONGTEXT Same as TEXT, but with a maximum size of 4GB MEDIUMTEXT Same as TEXT, but with a maximum size of 16K SET Accepts zero or more of a predefined set of up to 64 strings 7

Tipe Data: String (contd-2) TEXT Variable-length text with a maximum size of 64K TINYTEXT Same as TEXT, but with a maximum size of 255 bytes VARCHAR Same as CHAR, but stores just the text. The size is a maximum, not a minimum BLOB Blob with a maximum length of 64K MEDIUMBLOB Blob with a maximum length of 16MB LONGBLOB Blob with a maximum length of 4GB TINYBLOB Blob with a maximum length of 255 bytes 8

Tipe Data: Date and Time DATE Date from 1000-01-01 to 9999-12-31 in the format YYYY-MM-DD TIME Time in the format HH:MM:SS YEAR A 2 or 4 digit year, 2 digit years support a range of 70 (1970) to 69 (2069), 4 digit years support a range of 1901 to 2155 DATETIME A combination of DATE and TIME TIMESTAMP Functionally equivalent to DATETIME (but with a smaller range) 9

Contoh: CDM untuk Basisdata Tennis 10

Contoh: PDM untuk Basisdata Tennis 11

Contoh: Constraints dlm Basisdata Tennis Column value constraints: PLAYER(SEX) IN {'M','F'} MATCHES(WON) IN {0,1,2,3} MATCHES(WON) IN {0,1,2,3} COMMITTEE_MEMBERS(POSITION) IN {'Chairman', 'Secretary', 'Treasurer', 'General member'} PLAYERS (JOINED) >= 1970 PENALTIES (PAYMENT_DATE) >= '1970-01-01' PENALTIES (AMOUNT) > 0.00 COMMITTEE_MEMBERS (BEGIN_DATE) > '1990-01-01' Row level constraints: PLAYERS: YEAR (BIRTH_DATE) <= JOINED COMMITTEE_MEMBERS: END_DATE >= BEGIN_DATE 12

Contoh: Data dlm Basisdata Tennis Players S1 Teknik Informatika - Unijoyo 13

Contoh: Data dlm Basisdata Tennis (contd-2) Teams Matches Penalties S1 Teknik Informatika - Unijoyo 14

Contoh: Data dlm Basisdata Tennis (contd-3) Committee_members S1 Teknik Informatika - Unijoyo 15

Data Definition Language (DDL) CREATE/DROP basisdata CREATE tabel DROP tabel RENAME tabel ALTER tabel 16

DDL: Create/Drop (Basisdata) CREATE DATABASE db_name Contoh 1: Buatlah basisdata baru dengan nama tennis CREATE DATABASE tennis DROP DATABASE db_name Contoh 2: Drop basisdata tennis dari sistem DROP DATABASE tennis 17

DDL: Create/Drop/Rename (Tabel) CREATE TABLE tbl_name (column_name data_type [DEFAULT [column _constraint], [table_constraint] ); expr] DROP TABLE tbl_name [, tbl_name] Contoh 3: Drop seluruh tabel dalam basisdata tennis! DROP TABLE COMMITTEE_MEMBERS; DROP TABLE PENALTIES; DROP TABLE MATCHES; DROP TABLE TEAMS; DROP TABLE PLAYERS; RENAME TABLE tbl_name TO new_tbl_name [, tbl_name2 TO new_tbl_name2]... Contoh 4: Gantilah nama tabel Teams menjadi Groups! RENAME TABLE Teams TO Groups 18

DDL: Create (Tabel) Contoh 5: Buat tabel Players! SQL: CREATE TABLE PLAYERS (PLAYERNO SMALLINT NOT NULL, NAME CHAR(15) NOT NULL, INITIALS CHAR(3) NOT NULL, BIRTH_DATE DATE, SEX CHAR(1) NOT NULL, JOINED SMALLINT NOT NULL, STREET CHAR(15) NOT NULL, HOUSENO CHAR(4), POSTCODE CHAR(6), TOWN CHAR(10) NOT NULL, PHONENO CHAR(10), LEAGUENO CHAR(4), PRIMARY KEY (PLAYERNO) ); Contoh 6: Buat tabel Committee_Members! SQL: CREATE TABLE COMMITTEE_MEMBERS (PLAYERNO SMALLINT NOT NULL, BEGIN_DATE DATE NOT NULL, END_DATE DATE, POSITION CHAR(20), PRIMARY KEY (PLAYERNO, BEGIN_DATE) ); 19

DDL: Create (Tabel) (contd-2) Contoh 7: Buat tabel Players! CREATE TABLE PLAYERS (PLAYERNO SMALLINT NOT NULL, NAME CHAR(15) NOT NULL, INITIALS CHAR(3) NOT NULL, BIRTH_DATE DATE, SEX CHAR(1) NOT NULL, JOINED SMALLINT NOT NULL, STREET CHAR(15) NOT NULL, HOUSENO CHAR(4), POSTCODE CHAR(6), TOWN CHAR(10) NOT NULL, PHONENO CHAR(10), LEAGUENO CHAR(4), PRIMARY KEY (PLAYERNO), CHECK (PLAYERNO >= 1), CHECK (SEX IN ('M', 'F')), CHECK (JOINED >= 1970), CHECK (YEAR(BIRTH_DATE)<= JOINED) ); Contoh 8: Buat tabel Committee_Members! SQL: CREATE TABLE COMMITTEE_MEMBERS (PLAYERNO SMALLINT NOT NULL, BEGIN_DATE DATE NOT NULL, END_DATE DATE, POSITION CHAR(20), PRIMARY KEY (PLAYERNO, BEGIN_DATE), FOREIGN KEY (PLAYERNO) REFERENCES PLAYERS (PLAYERNO), CHECK (POSITION IN ('Chairman', 'Secretary','Treasurer', 'General member')), CHECK (BEGIN_DATE >= '1990-01-01'), CHECK (END_DATE >= BEGIN_DATE) ); 20

DDL: Alter (Tabel) ALTER TABLE tbl_name alter_specification [, alter_specification]... alter_specification: ADD CHANGE & MODIFY DROP RENAME 21

DDL: Alter (Tabel) - Add ADD [COLUMN] col_name column_definition [FIRST AFTER col_name ] ADD [COLUMN] (col_name column_definition,...) Contoh 9: Tambahkan satu kolom bernama TYPE di dalam tabel TEAMS. Kolom TYPE ini untuk memberikan identifikasi tim Pria dan Wanita! SQL: ALTER TABLE TEAMS ADD COLUMN TYPE CHAR (1); Contoh 10: Dengan adanya kolom TYPE, maka (misalkan) tim 2 sebagai tim Pria harus di-update. SQL: UPDATE TEAMS SET TYPE = 'M' WHERE TEAMNO = 2; 22

DDL: Alter (Tabel) Change & Modify CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST AFTER col_name] MODIFY [COLUMN] col_name column_definition [FIRST AFTER col_name] Contoh 11: Tambahkan panjang karakter kolom TOWN dari 10 menjadi 20! ALTER TABLE PLAYERS MODIFY COLUMN TOWN CHAR (20); 23

DDL: Alter (Tabel) Drop & Rename DROP [COLUMN] col_name DROP PRIMARY KEY DROP FOREIGN KEY fk_symbol Contoh 12: Hapuskan kolom TYPE dari tabel TEAMS! SQL: ALTER TABLE TEAMS DROP COLUMN TYPE RENAME [TO] new_tbl_name Contoh 13: Ubah nama tabel Teams menjadi Groups! SQL : ALTER TABLE Teams RENAME Groups 24

Data Manipulation Language (DML) INSERT / UPDATE / DELETE, SELECT Klausa-klausa SELECT: FROM --> menentukan tabel(-tabel) sumber WHERE --> memilih baris(-baris) yang memenuhi kondisi (-kondisi) GROUP BY --> menggabungkan baris(-baris) yang kolomnya memiliki nilai yang sama HAVING --> memilih grup yang memenuhi kondisi tertentu SELECT --> memilih kolom(-kolom) ORDER BY --> mengurutkan barisbaris berdasarkan nilai-nilai yang ada dalam kolom(-kolom) 25

DML: Klausa Select Contoh 14: Tampilkan seluruh data penalti. SQL: SELECT * FROM Penalties Hasil: PAYMENTNO PLAYERNO PAYMENT_DATE AMOUNT 1 6 1980-12-08 100.00 2 44 1981-05-05 75.00 3 27 1983-09-10 100.00 4 104 1984-12-08 50.00 5 44 1980-12-08 25.00 6 8 1980-12-08 25.00 7 44 1982-12-30 30.00 8 27 1984-11-12 75.00 Contoh 15: Tampilkan nomor pembayaran, nomor pemain dan jumlah dari masing-masing penalti SQL: SELECT paymentno, playerno, amount FROM Penalties Hasil: PAYMENTNO PLAYERNO AMOUNT 1 6 100.00 2 44 75.00 3 27 100.00 4 104 50.00 5 44 25.00 6 8 25.00 7 44 30.00 8 27 75.00 26

DML: Klausa Where Contoh 16: Dapatkan nomor, nama, jenis kelamin dan tanggal lahir dari masing-masing pemain pria yang lahir setelah tahun 1970. SELECT FROM WHERE playerno, name, sex, birth_date Players sex = M AND Year(birth_date) > 1970 Contoh 17: Dapatkan nomor pemain yang pernah terkena penalti lebih besar dari 25! SELECT playerno FROM Penalties WHERE amount > 25 27

DML: Klausa Order By Contoh 18: Buat daftar nomor pembayaran dan nomor pemain untuk masingmasing penalti; urutkan hasil berdasarkan nomor pemain dan nomor pembayaran untuk masing-masing pemain. SQL: SELECT paymentno, playerno FROM Penalties ORDER BY playerno, paymentno atau: ORDER BY 2, 1 Hasil: PAYMENTNO PLAYERNO 1 6 6 8 3 27 8 27 2 44 5 44 7 44 4 104 28

DML: Klausa Select (lengkap) Contoh 19: Cari nomor dari masing-masing pemain yang telah melakukan lebih dari 1 penalti yang besarnya lebih dari 25. SQL: SELECT playerno FROM Penalties WHERE amount > 25 GROUP BY playerno HAVING COUNT(*) > 1 ORDER BY playerno 29

DML: Klausa Select (lebih dari 1 tabel) Contoh 20: Tampilkan nomor tim dan nama kapten dari masing-masing tim SQL: SELECT TEAMNO, NAME FROM TEAMS, PLAYERS WHERE TEAMS.PLAYERNO = PLAYERS.PLAYERNO 30

DML: Klausa Select (lebih dari 1 tabel) (contd-2) Contoh 21: Dari data penalti, tampilkan nomor pembayaran, jumlah penalti, nomor pemain dan nama serta inisial pemain tersebut! SQL: SELECT PAYMENTNO, PENALTIES.PLAYERNO, AMOUNT, NAME, INITIALS FROM PENALTIES, PLAYERS WHERE PENALTIES.PLAYERNO = PLAYERS.PLAYERNO Contoh 22: Cari nama dan inisial pemain yang telah bermain di dalam pertandingan! SQL: SELECT DISTINCT P.NAME, P.INITIALS FROM PLAYERS AS P, MATCHES AS M WHERE P.PLAYERNO = M.PLAYERNO 31

INSERT INTO <table specification> [<column list>] VALUES (<expression> [{,<expression>}... ]) Contoh 23: Sebuah tim baru dengan pemain nomor 100 sebagai kaptennya telah bergabung di dalam liga. Tim ketiga ini akan bermain di dalam divisi ketiga. SQL: INSERT INTO TEAMS (TEAMNO, PLAYERNO, DIVISION) VALUES (3,100,'third') atau: DML: Insert data ke dalam Tabel INSERT INTO TEAMS VALUES (3,100,'third') 32

DML: Update data dalam Tabel UPDATE <table specification> SET <column name = expression> [ WHERE <condition> ] Contoh 24: Keluarga Parmenter telah pindah rumah. Sekarang mereka tinggal di Palmer Street nomor 83, kota Inglewood, kode pos 1234UU. Nomor telepon mereka yang baru belum diketahui. SQL: UPDATE PLAYERS SET STREET = 'Palmer Street', HOUSENO = '83', TOWN = 'Inglewood', POSTCODE = '1234UU', PHONENO = NULL WHERE NAME = 'Parmenter' Contoh 25: Naikkan jumlah penalti sebanyak 5%! SQL: UPDATE PENALTIES SET AMOUNT = AMOUNT * 1.05 33

DML: Delete data dalam Tabel DELETE FROM <table specification> [ WHERE <condition> ] Contoh 26: Hapus seluruh data penalti yang dilakukan oleh pemain nomor 44 pada tahun 1980! Query: DELETE FROM PENALTIES WHERE PLAYERNO = 44 AND YEAR(PAYMENT_DATE) = 1980 34