Archive for November 2014
Gerakan1000Blogger Funtastic HIMAKA
SELAMAT ULANG TAHUN YANG KE - 15
BUAT JURUSAN TERCINTA
HIMAKA STTPLN JAKARTA
(HIMPUNAN MAHASISWA TEKNIK INFORMATIKA)
SEMOGA SEMAKIN SUKSES JAYA DAN TETAP SATU!!
SELAMAT MEMPERINGATI HARI AIDS SEDUNIA
1 DESEMBER 2014
JAUHI PENYAKITNYA BUKAN ORANGNYA!!
INDONESIA BERSIH TANPA AIDS!!
#GERAKAN1000BLOGGER #HIMAKASTTPLN
@funtastic2014
TUGAS KELOMPOK SQL
Pada tugas SQL ini kami akan membuat Database Penyewaan
Buku. Tabel yang kita butuhkan ada 5 tabel yaitu :
1.
Tabel_Penyewa
·
kode_penyewa
·
nama_penyewa
·
alamat
·
telp_penyewa
·
tanggal_lahir
2.
Tabel_Buku
·
kode_buku
·
judul_buku
·
penerbit
·
jenis_buku
3.
Tabel_Sewa
·
kode_penyewa
·
kode_buku
·
mulai_sewa
·
akhir_sewa
·
jumlah_buku
4.
Tabel_Petugas
·
kode_petugas
·
nama_petugas
5.
Tabel_Pembayaran
·
kode_pembayaran
·
kode_penyewa
·
kode_petugas
·
harga_sewa
·
bayar
·
kembali
Bahasa pemrograman yang akan kita pakai adalah PHP
dikoneksikan dengan ORACLE.
Progress koneksi:
1. Menghubungkan database ORACLE dengan PHP
2. Mengganti password administrator
3.Pengaturankoneksi ke PHP
4.Coding koneksi
5. Koneksi sukses
Struktur tabel :
Kumpulan materi Pemrograman SQL (Teknik Informatika STTPLN)
Pertemuan 1
Pembahasan : Kontrak Kuliah dan Pengenalan tentang Database
Download : Pertemuan 1 SQL
Pertemuan 2
Pembahasan : Pengenalan tentang SQL dan DDL (Data Definition Language)
Download : Pertemuan 2 SQL
Pertemuan 3 dan 4
Pembahasan : DML (Data Manipulation Language) dan DCL (Data Control Language)
Download : Pertemuan 3&4 SQL
Pertemuan 5
Pembahasan : Pengelompokan Data dan Pengurutan Data
Download : Pertemuan 5 SQL
Pertemuan 6
Pembahasan : Sub-Query dan View
Download : Pertemuan 6 SQL
Semoga materinya bermanfaat :)
Pembahasan : Kontrak Kuliah dan Pengenalan tentang Database
Download : Pertemuan 1 SQL
Pertemuan 2
Pembahasan : Pengenalan tentang SQL dan DDL (Data Definition Language)
Download : Pertemuan 2 SQL
Pertemuan 3 dan 4
Pembahasan : DML (Data Manipulation Language) dan DCL (Data Control Language)
Download : Pertemuan 3&4 SQL
Pertemuan 5
Pembahasan : Pengelompokan Data dan Pengurutan Data
Download : Pertemuan 5 SQL
Pertemuan 6
Pembahasan : Sub-Query dan View
Download : Pertemuan 6 SQL
Semoga materinya bermanfaat :)
Event Kampus
- Tanggal : 05 Desember 2014
- Lokasi : Kampus STT-PLN
- Kategori : CompetitionOthersSeminar & Talkshow
1. I-CARE ( 1 Desember 2014)
I-CARE berarti Informatika Peduli. Pada hari pertama ini yang bertepatan dengan hari HIV/AIDS sedunia, ada beberapa kegiatan yang akan dilaksanakan:
- Acara pembukaan dari rangkaian acara Lustrum ke III Teknik Informatika STT-PLN
- Bakti sosial dan penggalangan dana untuk penderita HIV/AIDS
- Gerakan 1000 blogger dengan tema HIV/AIDS
- Lomba design branding dengan tema HIV/AIDS
- Talk show oleh LSM dengan tema HIV/AIDS
- Penampilan Stand Up Comedy STT-PLN
I-PLAY merupakan penyelenggaraan turnamen PES 2013 dan DOTA 2. Acara ini dimulai pada hari kedua FUNTASTIC hingga Final pada hari keempat. Acara ini dilaksanakan di Kamus STT-PLN sekaligus pembukaan bazaar yang diadakan selama dua hari ( 2 – 3 Desember).
3. I-CLOUD ( 4 Desember 2014)
I-CLOUD merupakan tema dari Seminar Nasional yang dilaksanakan pada hari keempat FUNTASTIC. One day Seminar yang mengangkat tema tentang Cloud Preneurship. Dengan pembicara professional dari MICROSOFT dan VM-WARE yang akan membahas kebutuhan sistem Cloud yang semakin diminati dan kaitan penggunaannya pada seorang entrepreneur.
4. I-FUN ( 5 Desember 2014)
I-FUN adalah hari terakhir sekaligus pelaksanaan malam puncak dari serangkaian acara FUNTASTIC. Pada hari ke lima ini ada beberapa kegiatan yang akan dilaksanakan yaitu:
- Lomba angkatan Teknik Informatika
- Lomba mural/graffity dengan tema HIV/AIDS
- Penampilan band Teknik Informatika, band STT-PLN dan ban pengisis acara lainnya.
Wanna join us?
Wiwit: 085790755818
Nanda: 085243755519
Pendaftaran Lomba
Erman: 085785785860
#Pembukaan bazaar dibuka untuk umum
Support by : +Seputar Kampus
Fungsi View pada Pemrograman SQL
View adalah perintah query yang disimpan pada database dengan
suatu nama tertentu, sehingga bisa digunakan setiap saat untuk melihat
data tanpa menuliskan ulang query tersebut.
Kegunaan VIEW:
Keuntungan VIEW:
Contoh query :
View dengan alias :
Query diatas juga dapat ditulis seperti ini:
contoh :
Aturan dalam VIEW :
Kita tidak bisa menggunakan operasi DML melalui VIEW jika didalam VIEW tersebut terdapat :
contoh :
Syntax dasar perintah untuk membuat view adalah sebagai berikut :
CREATE
[OR REPLACE]
VIEW view_name [(column_list)]
AS select_statement
[OR REPLACE]
VIEW view_name [(column_list)]
AS select_statement
Kita menggunakan opsi OR REPLACE jika kita ingin mengganti view
dengan nama yang sama dengan perintah tersebut. Jika tidak maka perintah
CREATE VIEW akan menghasilkan error jika nama view yang ingin dibuat
sudah ada sebelumnya.
Anda dapat menambahkan fungsi sql, pernyataan WHERE dan JOIN kedalam view dan menyajikan data dalam AS jika data itu berasal dari satu table.
SYNTAKS PERINTAH MEMBUAT SQL VIEW
CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
FROM table_name
WHERE condition
Kegunaan VIEW:
- Menyembunyikan Kolom atau Baris
- Fungsi built-in layer
- Menampilkan hasil dari penghitungan
- Menyediakan level isolasi antara data tabel dan View data pengguna
- Memberikan trigger berbeda pada view yang berbeda dari tabel yang sama
- Memberikan proses permission yang berbeda untuk view yang berbeda dari tabel yang sama
- Menyembunyikan Sintak SQL yang rumit
- Membatasi akses data
- Menyediakan data yang independen
- Menampilkan view yang berbeda-beda dengan data yang sama
- Memudahkan query yang kompleks
Contoh query :
CREATE VIEW view_empUntuk menampilkan view yang kita buat:
AS SELECT employee_id, last_name, salary
FROM employees
WHERE department_id = 80;
SELECT * FROM nama_viewQuery diatas akan membuat sebuah view yang bernama view_emp yang menampilkan data dari tabel employees yang bekerja pada department_id = 80.
View dengan alias :
CREATE VIEW view_emp2
AS SELECT employee_id ID_NUMBER, last_name NAME,
salary*12 ANN_SALARY
FROM employees
WHERE department_id = 50;
Query diatas juga dapat ditulis seperti ini:
CREATE VIEW view_emp2(ID_NUMBER, NAME, ANN_SALARY)
AS SELECT employee_id ID_NUMBER, last_name NAME,
salary*12 ANN_SALARY
FROM employees
WHERE department_id = 50;
Memodifikasi VIEW dengan CREATE OR REPLACE :
CREATE OR REPLACE VIEW view_emp2(ID_NUMBER, NAME, ANN_SALARY)Dengan menggunakan CREATE OR REPLACE, bila sudah ada view dengan nama yang sama dengan view yang akan kita buat, maka view terdahulu tersebut akan ditimpa dengan view yang baru.
AS SELECT employee_id ID_NUMBER, last_name NAME,
salary*12 ANN_SALARY
FROM employees
WHERE department_id = 50;
Membuat VIEW yang Kompleks
maksud dari view yang kompleks adalah kita menambahkan fungsi-fungsi lain dalam subquery seperti JOIN, GROUP FUNCTION, SET OPERATOR dll.contoh :
CREATE OR REPLACE VIEW dept_Sal(name, MinSal, MaxSal, avgSal)
AS
SELECT d.department_name, MIN(e.salary),
MAX(e.salary),AVG(e.salary)
FROM employees e JOIN departments d
ON (e.department_id = d.department_id)
GROUP BY d.department_name
Aturan dalam VIEW :
Kita tidak bisa menggunakan operasi DML melalui VIEW jika didalam VIEW tersebut terdapat :
- GROUP FUNCTION
- GROUP BY
- DISTINCT
- ROWNUM
- Kolomnya didefinisikan dengan ekspresi(salary + 2)
- NOT NULL kolom pada base table(tabel yang disebutkan setelah kata AS ) yang tidak dipilih oleh view
WITH CHECK OPTION
dengan klausa WITH CHECK OPTION, kita dapat membatasi perubahan yang diakibatkan oleh penggunaan operasi DML. sehinga jika adanya perubahan pada view, tidak mempengaruhi pada base tabelnyacontoh :
CREATE OR REPLACE VIEW view_emp2Dengan query diatas kita tidak dapat merubah department_id yang sudah ditentukan pada VIEW view_emp2 tetapi masih dapat melakukan perubahan terhadap data lain dan juga jika kita melakukan operasi DML pada VIEW view_emp2, data pada tabel EMPLOYEES tidak akan berubah
AS
SELECT *FROM employees
WHERE department_id = 20
WITH CHECK OPTION CONSTRAINT viewEmp2_ck ;
READ ONLY
Dengan READ ONLY kita tidak dapat melakukan operasi DML terhadap VIEW yang kita buat, sehingga view tersebut hanya dapat dilihat atau dibacaCREATE OR REPLACE VIEW view_emp2
AS
SELECT *FROM employees
WHERE department_id = 20
READ ONLY;
Menghapus VIEW
DROP VIEW nama_view
Sumber :
Tugas SQL Sub Query dan View
Dari tabel nilai yang telah pernah anda buat sebelumnya carilah nilai mahasiswa yang nilanya diatas rata-rata?
jawab :
SELECT nama,nilai
FROM mahasiswa, nilai
WHERE nilai > (SELECT avg (nilai) FROM nilai)
nama_barang varchar (25),
satuan varchar (20) ,
stok int,
constraint pk_kode_barang primary key (kode_barang)
);
INSERT INTO barang
VALUES ('ELK-01','Rice cooker','Buah',20);
INSERT INTO barang
VALUES ('ELK-02','Lemari es','unit',8);
INSERT INTO barang
VALUES ('ELK-03','televisi','unit',30);
INSERT INTO barang
VALUES ('ELK-04','Radio/Tape','Buah',35);
1. SELECT nama_barang, stok
FROM barang
WHERE stok < (SELECT avg (stok) FROM barang)
2. select pelanggan.kode_pelanggan, nama from pelanggan, pembelian
where pelanggan.kode_pelanggan = pembelian.kode_pelanggan
and kode_pembelian = (select kode_pembelian from pembelian where jum_pembelian = select max(jum_pembelian) from pembelian));
3. CREATE VIEW v_pelanggan as
SELECT nama, alamat, telepon
FROM pelanggan
WHERE kota ='jakarta'
SELECT * from v_pelanggan
4. CREATE VIEW V_PLGN_BELI as
SELECT kode_pelanggan, jum_pembelian, tgl_pembelian
FROM pembelian
SELECT * from V_PLGN_BELI
5. CREATE VIEW V_JUM_BELI as
SELECT nama_barang, nama, tgl_pembelian, jum_pembelian
FROM pembelian, pelanggan, barang
SELECT * from V_JUM_BELI
jawab :
SELECT nama,nilai
FROM mahasiswa, nilai
WHERE nilai > (SELECT avg (nilai) FROM nilai)
CREATE TABLE barang(
kode_barang char (6),nama_barang varchar (25),
satuan varchar (20) ,
stok int,
constraint pk_kode_barang primary key (kode_barang)
);
INSERT INTO barang
VALUES ('ELK-01','Rice cooker','Buah',20);
INSERT INTO barang
VALUES ('ELK-02','Lemari es','unit',8);
INSERT INTO barang
VALUES ('ELK-03','televisi','unit',30);
INSERT INTO barang
VALUES ('ELK-04','Radio/Tape','Buah',35);
CREATE TABLE pelanggan(
kode_pelanggan char (10),
nama varchar (30),
alamat varchar (30) ,
kota varchar (15),
telepon varchar (15),
constraint pk_kode_pelanggan primary key (kode_pelanggan)
);
INSERT INTO pelanggan
VALUES ('J-0001','Toko karisma','Jl Cimandiri 25','Depok', '(021)-367868');
INSERT INTO pelanggan
VALUES ('J-0002','Toko Ayu','Jl Cimone 35','tangerang', '(021)-467889');
INSERT INTO pelanggan
VALUES ('J-0003','Toko Warna','Jl DEF 30','jakarta', '(021)-234678');
INSERT INTO pelanggan
VALUES ('J-0004','Toko Surya','Jl abc 309','bandung', '(021)-356789');
SELECT * from pelanggan;
CREATE TABLE pembelian(
kode_pembelian char (10),
kode_barang char (10),
kode_pelanggan char (10),
tgl_pembelian date,
jum_pembelian int,
constraint pk_kode_pembelian primary key (kode_pembelian),
constraint fk_kode_barang foreign key (kode_barang)
references barang (kode_barang),
constraint fk_kode_pelanggan foreign key (kode_pelanggan)
references pelanggan(kode_pelanggan)
);
INSERT INTO pembelian
VALUES ('BEL-E001','ELK-01','J-0001','20 may 02',3);
INSERT INTO pembelian
VALUES ('BEL-E002','ELK-02','J-0001','21 may 02',4);
INSERT INTO pembelian
VALUES ('BEL-E003','ELK-01','J-0002','20 may 02',2);
INSERT INTO pembelian
VALUES ('BEL-E004','ELK-01','J-0001','20 may 02',2);
INSERT INTO pembelian
VALUES ('BEL-E005','ELK-03','J-0002','22 may 02',3);
INSERT INTO pembelian
VALUES ('BEL-E006','ELK-02','J-0001',24/05/02,1);
SELECT * from pembelian;
FROM barang
WHERE stok < (SELECT avg (stok) FROM barang)
2. select pelanggan.kode_pelanggan, nama from pelanggan, pembelian
where pelanggan.kode_pelanggan = pembelian.kode_pelanggan
and kode_pembelian = (select kode_pembelian from pembelian where jum_pembelian = select max(jum_pembelian) from pembelian));
3. CREATE VIEW v_pelanggan as
SELECT nama, alamat, telepon
FROM pelanggan
WHERE kota ='jakarta'
SELECT * from v_pelanggan
4. CREATE VIEW V_PLGN_BELI as
SELECT kode_pelanggan, jum_pembelian, tgl_pembelian
FROM pembelian
SELECT * from V_PLGN_BELI
5. CREATE VIEW V_JUM_BELI as
SELECT nama_barang, nama, tgl_pembelian, jum_pembelian
FROM pembelian, pelanggan, barang
SELECT * from V_JUM_BELI