• Tidak ada hasil yang ditemukan

Bahasa Pada Model data Relasional

N/A
N/A
Protected

Academic year: 2018

Membagikan "Bahasa Pada Model data Relasional"

Copied!
32
0
0

Teks penuh

(1)

Sistem Basis Data 1

Pertemuan 5 dan 6

Aljabar Relasional dan SQL

Rogayah, ST.,MMSI

(2)

Bahasa Pada Model data Relasional

Menggunakan bahasa query, yaitu pernyataan yang

diajukan untuk mengambil informasi

Terbagi 2 :

1. Bahasa Query Formal

Bahasa query yang diterjemahkan dengan

menggunakan simbol-simbol matematis. Terbagi 2,

yaitu:

(3)

Bahasa Pada Model data Relasional

Contoh:

Aljabar Relasional

, yaitu dimana query diekspresikan dengan cara

menerapkan operator tertentu terhadap suatu tabel / relasi.

b. Non Prosedural, yaitu pemakai menspesifikasikan data apa yang

dibutuhkan tanpa menspesifikasikan bagaimana untuk

mendapatkannya.

Contoh:

Kalkulus Relasional

, dimana query menjelaskan set tuple yang

diinginkan dengan cara menjelaskan predikat tuple yang

(4)

Bahasa Pada Model data Relasional

2. Bahasa Query Komersial

Bahasa Query yang dirancang sendiri oleh programmer

menjadi suatu program aplikasi agar pemakai lebih mudah

menggunakannya (user friendly).

Contoh :

QUEL

Berbasis pada bahasa kalkulus relasional

QBE

Berbasis pada bahasa kalkulus relasional

SQL

(5)

1. Aljabar Relasional

(6)

Structure Query Language

(7)

Structure Query Language

Komponen-Komponen SQL

a.

Data Definition Language

(DDL) :

Digunakan untuk mendefinisikan data dengan menggunakan

perintah : create, drop, alter.

b.

Data Manipulation Language

(DML) :

Digunakan untuk memanipulasi data dengan menggunakan

perintah : select, insert, update, delete.

Data Manipulation Language merupakan bagian terpadu bahasa SQL.

Perintah-perintahnya dapat dibuat secara interaktif atau ditempelkan

pada sebuah program aplikasi. Pemakai hanya perlu menentukan 'APA'

yang ia inginkan, DBMS menentukan 'BAGAIMANA' cara

mendapatkannya.

c.

Data Control Language

(DCL) :

Digunakan untuk mengontrol hak para pemakai data dengan

(8)
(9)

Structure Query Language

DATA DEFINITION LANGUAGE

1. CREATE TABLE

Fungsi : membuat tabel

Sintaks :

CREATE TABLE tbname

(col 1 data type data spec,

col 2 data type data spec,

.

.

(10)

Structure Query Language

Contoh :

CREATE TABLE PERSONEL

(REGNO CHAR(10) NOT NULL,

NAME CHAR(45) NOT NULL,

ADDRESS CHAR(45),

(11)

Structure Query Language

NULL

Spesifikasi NULL, NOT NULL, NOT NULL WITH DEFAULT

NULL :

dapat diinterpretasikan sebagai nilai yang tidak diketahui atau

tidak tersedianya suatu nilai. Null bukan berarti kosong (blank)

atau 0 (Nol)

NOT NULL :

pemakai atau program harus memberikan nilai-nilai pada saat

memasukkan record

NOT NULL WITH DEFAULT :

(12)

Structure Query Language

2. CREATE VIEW

Fungsi : membuat tabel view.

View merupakan bentuk alternatif penyajian data dari

satu atau lebih tabel. View dapat berisi semua atau

sebagian kolom yang terdapat pada tabel dimana kolom

tersebut didefinisikan.

Tujuan membuat view :

Meningkatkan keamanan data

Meningkatkan kemandirian data

(13)

Structure Query Language

Sintaks :

CREATE VIEW viewname

(column1, column2, ……..)

AS SELECT statement FROM tbname [WITH CHECK OPTION]

Keterangan :

View-name : nama view yang akan dibuat.

Column : nama atribut untuk view

Statement : atribut yang dipilih dari tabel basis data.

Tabel-name : nama tabel basis data.

Contoh :

(14)

Structure Query Language

CREATE INDEX

Fungsi : membuat index

Sintaks :

CREATE [UNIQUE] INDEX indexname ON

nama_table (nama_kolom)

Contoh :

(15)

Structure Query Language

4. DROP TABLE

Fungsi : menghapus Tabel • Sintaks :

DROP TABLE tbname

• Contoh :

DROP TABLE PERSONEL

Dengan perintah itu obyek lain yang berhubungan dengan tabel tersebut otomatis akan dihapus atau tidak akan berfungsi seperti :

- semua record dalam tabel akan terhapus - index dan view pada tabel akan hilang - deskripsi tabel akan hilang

TRUNCATE / Menghapus isi Tabel

TRUNCATE nama_tabel;

(16)

Structure Query Language

Bentuk Lain:

DROP TABLE [schema_name].table_name [ CASCADE

CONSTRAINTS ] [ PURGE ];

(Pada Oracle)

Parameter atau argumen:

schema_name

Nama skema yang memiliki tabel.

table_name

Nama tabel untuk menghapus dari database Oracle.

[ CASCADE CONSTRAINTS ]

Pilihan. Jika ditentukan, semua batasan integritas referensial akan turun juga.

PURGE

Pilihan. Jika ditentukan, tabel dan objek yang tergantung akan dibersihkan dari

(17)

Structure Query Language

5. DROP VIEW

Fungsi : menghapus view

Sintaks : DROP VIEW viewname

Contoh : DROP VIEW VPERSON

6. DROP INDEX

Fungsi : menghapus index Sintaks :

DROP

INDEX indexname

(18)

Structure Query Language

Flashback Table

Gunakan pernyataan Flashback untuk

memulihkan keadaan sebelumnya dari meja di

acara kesalahan manusia atau aplikasi.

FLASHBACK TABLE print_media TO BEFORE

DROP; atau

(19)

Structure Query Language

7. ALTER

Fungsi : merubah atribut pada suatu tabel

Sintaks :

ALTER TABLE tbname

MODIFY (nama_kolom tipe_kolom)

ADD (nama_kolom tipe_kolom [[before, nama_kolom]])

DROP (nama_kolom tipe_kolom)

Contoh : merubah Tabel TABX dengan menambah Field D.

ALTER TABLE TABX

(20)

Structure Query Language

Syntax:

ALTER TABLE nama_tabel MODIFY nama_kolom tipe_data_baru; Contoh:

ALTER TABLE daftar_jurusan MODIFY jumlah_mahasiswa MEDIUMINT;

Syntax:

ALTER TABLE nama_tabel CHANGE nama_kolom nama_kolom_baru tipe_data; Contoh:

ALTER TABLE daftar_jurusan CHANGE alamat alamat_jurusan VARCHAR(100)

Syntax:

ALTER TABLE <nama_tabel_lama>RENAME TO <nama_tabel_baru>; Contoh ubah nama tabel.

ALTER TABLE daftar_jurusan RENAME TO tabel_jurusan; atau

(21)

Structure Query Language

Syntax:

ALTER TABLE nama_tabel ADD nama_kolom_baru

tipe_data;

Contoh:

ALTER TABLE daftar_jurusan ADD ketua_jurusan

VARCHAR(50);

Syntax:

ALTER TABLE nama_tabel DROP nama_kolom;

Contoh:

(22)

Structure Query Language

DATA MANIPULATION LANGUAGE

1. INSERT

Fungsi : menambah baris (record) baru

Sintaks :

INSERT INTO tbname (col1, ...) VALUES (value1, ...)

Contoh :

INSERT INTO S (ID,Name,Jumlah,Kota)VALUES ('S1','Smith',20,'London');

Catatan :

Sintaks tersebut dapat digunakan jika jumlah kolom = jumlah nilai, tetapi jika

dalam tabel semua kolom akan diisi dapat digunakan sintaks berikut ini :

Sintaks :

INSERT INTO tbname VALUES (value1, value2, ...)

Nilai-nilai diisikan

sebanyak kolom yang terdapat di tabel tersebut.

Contoh :

INSERT INTO S VALUES ('S2','Jones,10,'Paris'); atau jika beberapa kolom saja:

Contoh :

(23)

Structure Query Language

3. DELETE

Fungsi : menghapus record

Sintaks :

DELETE FROM tbname WHERE

kondisi

Contoh :

DELETE FROM Mahasiswa WHERE jurusan =

'Teknik Informatika';

(24)

Structure Query Language

4. SELECT

Fungsi : menampilkan record

Sintaks : SELECT [DISTINCT] colname FROM tbname [WHERE kondisi]

SELECT NIP,nama_dosen FROM daftar_dosen WHERE alamat='Padang';

[GROUP BY kondisi]

SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nim;

[HAVING kondisi]

SELECT nim, nama, AVG(nilai) as rata_rata FROM nilai GROUP BY nim HAVING AVG(nilai)>80;

[ORDER BY kondisi]

(25)

SELECT

• [ALL | DISTINCT | DISTINCTROW ]

• [HIGH_PRIORITY]

• [STRAIGHT_JOIN]

• [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT]

• [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]

• select_expr [, select_expr ...]

• [FROM table_references

• [WHERE where_condition]

• [GROUP BY {col_name | expr | position}

• [ASC | DESC], ... [WITH ROLLUP]]

• [HAVING where_condition]

• [ORDER BY {col_name | expr | position}

• [ASC | DESC], ...]

• [LIMIT {[offset,] row_count | row_count OFFSET offset}]

• [PROCEDURE procedure_name(argument_list)]

• [INTO OUTFILE 'file_name'

• [CHARACTER SET charset_name]

• export_options

• | INTO DUMPFILE 'file_name'

• | INTO var_name [, var_name]]

(26)

Structure Query Language

2. UPDATE

Fungsi : merubah record

Sintaks :

UPDATE tbname SET field = ekspresi

WHERE kondisi

UPDATE daftar_dosen SET no_hp

='085298710065‘ WHERE nama_dosen='Sabrina

(27)

Structure Query Language

Fungsi Perhitungan

COUNT : jumlah baris dan kolom

SELECT COUNT(*) FROM S

SUM : jumlah nilai dam kolom

SELECT SUM (QTY) FROM SP WHERE Pn = 'P2'

AVG : rata - rata nilai dalam kolom

SELECT AVG(stock) as ratastock from barang

MAX : nilai terbesar dalam kolom

SELECT MAX(stock) as ratastock from barang

MIN : nilai terkecil dalam kolom

(28)

Structure Query Language

DATA CONTROL LANGUAGE

1. GRANT

Fungsi : digunakan untuk memberikan izin akses

kepada user

Sintaks :

GRANT privileges ON tbname TO user

Contoh :

GRANT SELECT ON CLUB TO PUBLIC

(29)

Structure Query Language

2. REVOKE

Fungsi : digunakan untuk mencabut izin akses

kepada user

Sintaks :

REVOKE privileges ON tbname FROM user

Contoh :

REVOKE INSERT, UPDATE, DELETE ON CLUB FROM

USER01

(30)

Structure Query Language

SQL menyediakan dua karakter yang

memungkinkan Anda untuk membangun pola.

Kedua wildcard adalah persentase (%) dan garis

bawah (_).

Persentase (%) wildcard cocok dengan urutan

karakter apapun termasuk ruang.

(31)

Structure Query Language

SELECT Id, ProductName, UnitPrice, Package

FROM Product

WHERE ProductName LIKE 'Ca

%‘

SELECT Id, ProductName, UnitPrice, Package

FROM Product

(32)

Referensi

Dokumen terkait

Hasil dari penelitian ini menunjukan bahwa metode TOPSIS dapat digabungkan dengan metode-metode lain seperti yang telah dilakukan oleh peneliti-peneliti terdahulu, sehingga

Jika ada yang belum memiliki nilai nol (kolom 2), maka cari nilai terkecil di kolom tersebut digunakan untuk mengurangi semua nilai yang ada di kolom tersebut..

Gelombang akustik yang merambat di kolom perairan akan mengenai target seperti ikan atau dasar perairan dimana gelombang akustik ini akan dipantulkan kembali dalam bentuk echo

Kedatangan pedagang-pedagang muslim seperti halnya yang terjadi dengan perdagangan sejak zaman Samudra Pasai dan Malaka yang merupakan pusat kerajaan Islam yang

Menurut agama islam sebaik – baik pendidikan anak adalah Al – Qur’an, dengan mengajarkan anak apa yang terkandug dalam Al – Qur’an , maka anak akan tumbuh dengan akhlak yang

Berdasarkan hasil analisis yang dilakukan dengan menggunakan perusahaan non keuangan yang terdaftar dalam Bursa Efek Indonesia pada periode 2008-2011 dapat diambil

Mempengaruhi Penerimaan Bank Terhadap Sistem Kliring Bank Indonesia (Pada Bank Peserta SKNBI di Wilayah Kota Pangkalpinang).. 1.2

Tetapi, keberadaan Ketetapan Majelis Permusyawaratan Rakyat dihilangkan dari jenis dan tata urutan peraturan perundang-undangan di dalam Undang-Undang Nomor 10