Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Structure Query Language (SQL)

Presentasi serupa


Presentasi berjudul: "Structure Query Language (SQL)"— Transcript presentasi:

1 Structure Query Language (SQL)

2 Sejarah(1) Tahun 1974, Dr. Chamberlin dari Saan Jose Laboratorium IBM mendefinisikan sebuah bahasa untuk mengakses database yang disebut dengan SEQUEL (Structure English Query languange) Tahun 1976, edisi perbaikan untuk SEQUEL2 dan diganti namanya dengan SQL (Structure Query Languange) IBM membuat sebuah DBMS menggunakan SEQUEL2 yang diberi nama System-R ORACLE, diakhir tahun 1970-an membuat RDBMS Komersial pertama berbasis pada SQL

3 Sejarah(2) Tahun 1987, American National Standards Institute (ANSI) dan International Standards Organization (ISO) membuat standar untuk SQL Tahun 1992, dibentuk versi baru dari standar SQL yang diberi nama SQL2 atau SQL92 Tahun 1999, SQL3 di realese sebagai standar baru yang meng-support Object Oriented Database Management System

4 Definisi SQL Sebuah standar bahasa di komputer dalam proses manipulasi dan akses terhadap database SQL ada dalam program DBMS seperti MS Access, DB2, Informix, MS SQL Server, Oracle, Sybase, MySQL

5 Kegunaan SQL Maintenance database Maintenance tabel
Maintenance data pada tabel Retrieve Insert Update Delete

6 Kelompok Perintah SQL(1)
SQL Data Definition Language (DDL) bagian dari perintah SQL untuk membuat, memodifikasi atau menghapus struktur basis data. CREATE TABLE – membuat tabel baru pada basisdata ALTER TABLE – merubah tabel pada basisdata DROP TABLE – menghapus tabel pada basisdata CREATE INDEX – membuat tabel index DROP INDEX - menghapus tabel index RENAME – mengubah nama tabel TRUNCATE – menghapus seluruh data dari suatu tabel tanpa menghapus tabel yang ada

7 Kelompok Perintah SQL(2)
SQL Data Manipulation Language (DML) Konsep yang menerangkan bagaimana mengubah, menambah, dan menghapus baris tabel. UPDATE – merubah data pada tabel DELETE – menghapus data pada tabel INSERT INTO – menambahkan data pada tabel baru dibasisdata MERGE - melakukan update maupun insert ke suatu tabel tertentu berdasarkan kondisi dari tabel lain

8 Tipe Data pada Oracle 10g Varchar2(size) : string dengan panjang maximal sebesar size. Maksimum karakter yang dapat disimpan sebesar 4000bytes. Char(size) : string dengan panjang maximal sebesar size. Maksimum karakter yang dapat disimpan sebesar 2000 bytes. Number(p,s) : p merupakan presisi dan s adalah digit dibelakang koma. Jika kita abaikan p dan s berarti dianggap sebagai tipe number floating point.

9 Tipe Data pada Oracle 10g Number specification Column Length
Decimal Digits (3,2) 3 2 (6,3) 6 (17,12) 17 12 Jumlah integer yang disajikan adalah merupakan selisih antara kedua angka tersebut. Jadi spesifikasi (9,4) menyatakan 5 digit angka sebelum koma dan 4 digit angka di belakang koma. Jika jumlah digit desimal melebihi daripada yang sudah didefinisikan maka akan langsung dibulatkan.

10 Tipe Data pada Oracle 10g Long : data karakter dengan ukuran panjang bervariasi, hingga mencapai 2 Gb. (tipe data ini tidak dapat digunakan sebagai key) Raw (size) : tipe data berupa binary data dengan ukuran maksimal 255 bytes Long Raw : tipe data berupa binary data dengan ukuran maksimal 2 Gb tidak dikonversi oleh oracle (data mentah apa adanya). Date : tipe data ini menyimpan waktu dan tanggal dari sebuah informasi, dengan waktu yang dibulatkan ke detik yang terdekat. Biasanya komponen waktu dari kolom tanggal tidak dapat dilihat. Timestamp : tipe data ini mirip dengan tipe data date. Terdapat komponen waktu yang dapat langsung dilihat.

11 Constraint Wacth Out Your Step..!!

12 Pengertian Constraint
Constraint adalah pemaksaan aturan yang dilakukan pada level tabel. Terdapat beberapa constraint yang dapat digunakan : Primary Key Foreign Key Null / Not Null Unique Check

13 Primary Key Secara implisit Primary Key membentuk keunikan. Hanya ada satu primary key yang diperbolehkan untuk setiap tabel. Secara implisit Primary Key adalah NOT NULL. Primary Key dapat dikatakan juga sebagai constraint Unique yang bernilai NOT NULL. Pada sebuah Primary Key tidak boleh diberikan constraint Unique tetapi diperbolehkan menggunakan NOT NULL.

14 Contoh : CREATE TABLE mahasiswa( nim char(9), nama varchar2(10), CONSTRAINT pk_mahasiswa PRIMARY KEY ); CREATE TABLE matakuliah( kode_mk char(5), nama_mk varchar2(10), CONSTRAINT pk_mahasiswa PRIMARY KEY (kode_mk, nama_mk)

15 Foreign Key Digunakan sebagai hubungan antar primary atau unique key lain. Constraint ini bertujuan untuk menetapkan suatu kolom atau kombinasi dari beberapa kolom menjadi foreifn key dari sebuah tabel. Foreign key sering disebut sebagai referential integrity constraint. Kolom atau kombinasi kolom yang menjadi foreign key pada tabel anak mengacu ke kolom atau kombinasi kolom yang menjadi Primary Key atau Unique key pada tabel induk.

16 Contoh : CREATE TABLE mengambil ( nim char(9), kode_mk char(5), semester char(1), CONSTRAINT fk_mhs FOREIGN KEY(nim) REFERENCES mahasiswa ON DELETE CASCADE, CONSTRAINT fk_mk FOREIGN KEY(kode_mk) REFERENCES matakuliah ON DELETE CASCADE, CONSTRAINT pk_ambil PRIMARY KEY (nim,kode_mk); ); Ket : On Delete Cascade digunakan untuk membentuk keterkaitan antara tabel yang terhubung. Jika suatu baris data pada tabel parent dihapus maka, kolom pada tabel child yang terhubung juga akan terhapus.

17 Null / Not Null Jika sebuah kolom pada database tidak boleh kosong (harus terisi), maka constraint NOT NULL harus diberikan pada kolom tersebut. Dengan demikian pada saat tabel diisi dengan data, maka kolom tersebut harus diisi. Jika tidak,,sistem akan mengeluarkan pesan error. Contraint NULL berarti mengizinkan kolom untuk diisi atau pun dikosongkan. Contoh : CREATE TABLE mhs (nim char(9) CONSTRAINT pk_mhs PRIMARY KEY, nama varchar2(20) NOT NULL);

18 Unique Merupaka constraint yang memiliki sifat yang sama dengan Primary Key, yaitu dapat terdiri dari satu kolom atau lebih, memiliki nilai yang berbeda untuk setiap baris pada suatu kolom yang sama. Hanya saja, constraint unique megijinkan adanya nilai NULL. Contoh: CREATE TABLE mhs(nim char(9) CONSTRAINT pk_mhs PRIMARY KEY, nama varchar2(20) NOT NULL, varchar2(25) CONSTRAINT uk_mhs UNIQUE ( ));

19 Check Constraint check digunakan untuk memeriksa nilai suatu kolom apakah memenuhi suatu kriteria yang diinginkan. Kriteria-kriteria tersebut dapat berupa perbandingan, range, NULL, LIKE, EXISTS. Contraint check tidak dapat digunakan pada: acuan pseudo-columns seperti SYSDATE, UID, dll. Query yang mengacu pada nilai pada kolom lain.

20 Contoh : CREATE TABLE mhs ( nim char(9) CONSTRAINT pk_mhs PRIMARY KEY, nama varchar2(20) NOT NULL, umur number(2,0) CONSTRAINT ck_mhs CHECK(umur>17) );

21 Kelompok Perintah DDL Let’s Check This Out!! ^o^v

22 Create Table Perintah Create Table digunakan untuk membentuk sebuah tabel. Sintaks : CREATE TABLE nama_tabel ( nama_atribut1 tipe1 CONSTRAINT pk_nama_tabel PRIMARY KEY, Nama_atribut2 tipe2 [unique][notnull/null][default] nilai default [check], ……… );

23 Contoh : CREATE TABLE mahasiswa ( Nim char(10) not Null, Nama varchar(50), Alamat varchar(100), KodeJur char(2), CONSTRAINT pk_nim PRIMARY KEY (Nim) ); Ket : Untuk melihat struktur sebuah tabel yang sudah dibuat dapat digunakan perintah DESCRIBE nama_tabel. Contoh : SQL> DESCRIBE mahasiswa;

24 Create User Digunakan untuk mendefinisikan user baru beserta password nya. Contoh : CREATE USER fulan IDENTIFIED BY cupu; Ket: Agar user baru ini dapat log on, maka setelah di create lakukan GRANT CONNECT sebagai berikut: GRANT CONNECT, RESOURCE TO nama_user; Sintaks : CREATE USER nama_user IDENTIF IED BY password_user;

25 Drop Table Digunakan untuk menghapus definisi tabel pada ORACLE yaitu semua dan indeks yang dimiliki tabel. Contoh : DROP TABLE mahasiswa CASCADE CONSTRAINT; Ket : Option CASCADE CONSTRAINT akan menghapus pula constraint referensi integrity yang terhubung. Sintaks : DROP TABLE nama_tabel [CASCADE CONSTRAINT];

26 Alter Table Digunakan untuk mengubah dan menghapus tabel dan konstrain yang berlaku. Sintaks : ALTER TABLE tablename ADD attributename datatype constraint ADD tableconstraint MODIFY attributename datatype constraint DROP PRIMARY KEY DROP UNIQUE attributename (menghilangkan unique constraint pada attribute) DROP CONSTRAINT constraintname

27 Perintah ADD digunakan untuk menambahkolom dan/atau konstrain dari suatu tabel.
Perintah MODIFY digunakan untuk memodifikasi definisi suatu kolom. Klausa DROP digunakan untuk menghapus bentuk kontrain pada suatu tabel.

28 Alter User Digunakan untuk mengubah password seorang user. Contoh :
ALTER USER fulan IDENTIFIED BY cups; Sintaks : ALTER USER nama_user IDENTIF IED BY password;

29 Create Index Index digunakan untuk mempercepat pengaksesan data pada suatu tabel. Index dapat diberikan pada suatu kolom. Contoh : CREATE INDEX e_mail FOR mahasiswa ( ); Sintaks : CREATE INDEX nama_index FOR nama_tabel (atribut-1, atribut-2,…, atribut-n);

30 Drop Index Digunakan untuk menghapus index tertentu yang ada di basis data. Contoh : DROP INDEX e_mail; Sintaks : DROP INDEX nama_index;

31 RENAME Digunakan untuk mengubah nama tabel, view, sequence, dan synonym. Contoh : RENAME mahasiswa TO mhs; Sintaks : RENAME nama_lama TO nama_baru;

32 TRUNCATE Digunakan untuk menghapus seluruh data dari suatu tabel tanpa menghapus tabel yang bersangkutan. Contoh : TRUNCATE TABLE mhs; Sintaks : TRUNCATE TABLE nama_tabel;

33 Kelompok Perintah DML Keep fight guys…

34 Tabel Latihan Tabel Mahasiswa NIm Nama Alamat KodeJur 30109001 Dwi
Jl. Abc 1 3 Tri Jl. Terate No. 123 Candra Jl Terusan No. 10 4 Adji Jl Manisi 35 Adi Jl Taruna 15 5

35 Insert Data Sintaks : INSERT INTO nama_tabel (kolom1, kolom2, …)VALUES (value1, value2, ...); atau INSERT INTO nama_tabel VALUES (value1, value2, …); INSERT INTO Mahasiswa (nim, nama, alamat) values (‘ ’,’Dwi’,’Jl. Abc. 1’); INSERT INTO Mahasiswa VALUES (‘ ’,’Tri’,’ Jl. Terate No. 123’);

36 Update Data Update mahasiswa set nama=‘Dwi A. S’ where nim=‘03109001’;
Perintah update pengaruh pada kolom jadi pastikan data yang akan di update dengan mengisi kondisi where Jumlah kolom yang diupdate bisa lebih dari 1 dalam 1 aksi. Sintaks : UPDATE nama_tabel SET column=expression WHERE condition;

37 Delete Data Delete Mahasiswa where nim=‘03109002’ Delete Mahasiswa
Perintah delete berpengaruh pada baris data, jadi pastikan baris data yang mana yang akan dihapus. Sintaks : DELETE FROM nama_tabel WHERE condition;

38 Retrieve Data Klausa yang digunakan SELECT kolom-data FROM tabel-data
WHERE filter-data GROUP BY mengelompokkan HAVING seleksi berdasarkan grup tertentu ORDER BY urutan-data

39 SELECT kolom-data Tanda ‘*’ untuk menampilkan seluruh kolom
Select * from Mahasiswa Kata ‘AS’ untuk memberikan judul kolom beda dengan nama kolom select nama as Nama mahasiswa, Alamat from Mahasiswa Fungsi standar untuk manipulasi tampilan data kolom Select LEFT(nim,3), nama from Mahasiswa

40 WHERE filter-data(1) Filter data menggunakan operator
=, <>, >, <, >=, <= Like between, IN Select * from mahasiswa where nama=‘dwi’ Select * from mahasiswa where nama like ‘t%’ Select * from mahasiswa where nama IN (‘tri’,’dwi’)

41 WHERE filter-data(2) Mengunakan AND dimana data akan di tampilkan pada kedua kondisi sesuai (sama) select * from mahasiswa where nama=‘dwi’ and nama=‘tri’ Menggunakan OR dimana data akan ditampilkan jika salah satunya sesuai (sama) select * from mahasiswa where nama=‘tri’ or nama=‘dwi’

42 FROM tabel-data(1) From tabel-data sebelumnya hanya berasal dari satu tabel, tetapi dalam kenyataannya akan dibutuhkan lebih dari satu tabel untuk menampilkan datanya select employees.first_name, schedule.date from employees, schedule where employees.employee_id=schedule.employee_ ID

43 FROM tabel-data(1) Mulai SQL92 untuk keperluan ini menggunakan keyword Join select employees.first_name, schedule.date from employees inner join schedule on employees.employee_id=schedule.employee_ ID Terdapat beberapa perintah join yang lainnya yang akan dibahas pada sesi berikutnya

44 ORDER BY urutan-data Menggunakan kata ASC untuk urutan data dari kecil ke besar Select * from mahasiswa order by nama ASC Menggunakan kata DESC untuk urutan data dari besar ke kecil Select * from mahasiswa order by nim DESC SQL mengunakan kata ASC sebagai default untuk perintah order by ini

45 Rangkuman SQL merupakan salah satu bahasa yang ada di komputer untuk pengaksesan terhadap basisdata SQL dimulai pada tahun 1972 dengan nama SEQUEL ANSI dan ISO membuat standarisasi SQL dengan membuat standar SQL2 pada tahun dan SQL3 tahun 1999

46 Rangkuman SQL Data Definition Language (DDL)
CREATE TABLE – membuat tabel baru pada basisdata ALTER TABLE – merubah tabel pada basisdata DROP TABLE – menghapus tabel pada basisdata CREATE INDEX – membuat tabel index DROP INDEX - menghapus tabel index SQL Data Manipulation Language (DML) SELECT – mengambil data dari tabel di basisdata UPDATE – merubah data pada tabel DELETE – menghapus data pada tabel INSERT INTO – menambahkan data pada tabel baru dibasisdata

47 Best Practice Pembentukan ID 1 1 3 1 3 0 3 4 5 a b c d e
a b c d e Penamaan Objek [Nama_Modul] [Jenis_Objek] [Nama_Objek] Ex : Payment_sp_gen_report_monthly Pemberian comment untuk pembuatan/modifikasi objek Segera hapus objek sampah (temp) Hindari penggunaan sequence tanpa makna pada objek Ex : sp_calc_bonus1, sp_calc_bonus2


Download ppt "Structure Query Language (SQL)"

Presentasi serupa


Iklan oleh Google