Translate

Monday, October 7, 2013

tugas kelompok

1.     Pengertian Query dan database
a.     Database adalah kumpulan informasi yang disimpan di dalam komputer  secara sistematik sehingga dapat diperiksa menggunakan suatu programkomputer untuk memperoleh informasi dari basis data tersebut.
b.     Database adalah representasi kumpulan fakta yang saling berhubungan disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.
c.      Database merupakan sekumpulan informasi yang saling berkaitan padasuatu subjek tertentu pada tujuan tertentu pula.
d.     Database adalah susunan record data operasional lengkap dari suatuorganisasi atau perusahaan, yang diorganisir dan disimpan secaraterintegrasi dengan menggunakan metode tertentu dalam komputer sehingga mampu memenuhi informasi yang optimal yang dibutuhkan oleh para pengguna
Query adalah semacam kemampuan untuk menampilkan suatu data dari database dimana mengambil dari table-tabel yang ada di database, namun tabel tersebut tidak semua ditampilkan sesuai dengan yang kita inginkan. data apa yang ingin kita tampilkan.
misal : data peminjam dengan buku yang dipinjam, maka nanti akan mengambil data dari table peminjam dan tabel buku. 

Query adalah suatu extracting data dari suatu database dan menampilkannya untuk “pengolahan” lebih lanjut. 

Query adalah pertanyaan atau permintaan informasi tertentu dari sebuah basisdata yang ditulis dalam format tertentu. 

Query adalah perintah-perintah untuk mengakses data pada sistem basis data 
2.     SQL statement
Dasar SQL

Perintah perintah dalam SQL terbagi dalam 2 kelompok besar :
• Data Manipulation Language
• Data Definition Language

************************************************************************************

Menampilkan Data dengan Statement SELECT

Syntax paling dasar untuk mengambil data dari database adalah sebagai berikut :

SELECT [nama colomn] FROM [nama table]

Untuk menampilkan semua kolom dari suatu table, digunakan tanda asterik (*), daripada menyebutkan nama kolomnya satu per satu. Tuliskan statement berikut :

SELECT * FROM [nama table]

************************************************************************************

Filter Data dengan WHERE

Perintah SELECT dan FROM diatas hanya membatasi jumlah kolom yang ditampilkan saja, sedangkan jumlah baris yang dihasilkan tidak dibatasi. Anda sering memerlukan hanya baris atau data yang memenuhi kriteria tertentu saja yang ditampilkan.
Klausa WHERE digunakan untuk menentukan kriteria RECORD yang ditampilkan. Syntax umumnya adalah sebagai berikut :

SELECT [nama columns] FROM [nama tables] WHERE [Conditions]

contoh :

SELECT * FROM tbDataMahasiswa WHERE Nama='AGUS'

maka akan dihasilkan record semua kolom yang memiliki Nama AGUS

pada WHERE dapat diberi fungsi logika yaitu AND (dan) dan OR (atau)

SELECT [nama colomn] FROM [nama tables] WHERE [condition1] AND [condition2]
SELECT [nama colomn] FROM [nama tables] WHERE [condition1] OR [condition2]

************************************************************************************

Sortir Data dengan ORDER BY

ORDER BY digunakan untuk mengurutkan hasil pencarian data. Secara default data yang ditampilkan disortir berdasarkan urutan masuknya data ke dalam tabel. Dengan menggunakan ORDER BY anda dapat mengurutkan berdasarkan kolom tertentu yang anda kehendaki.
Bila anda perhatikan perintah SQL diatas maka data yang dihasilkan telah diurutkan berdasarkan kolom CustomerID. Anda dapat merubahnya dengan mengurutkan berdasarkan kolom ContactName dengan perintah berikut :

SELECT NIM, NAMA, ALAMAT
FROM tbDataMahasiswa
ORDER BY NIM

************************************************************************************

Cari yang Mirip dengan LIKE


Apabila WHERE memfilter data berdasarkan kriteria tertentu yang sudah pasti, maka LIKE digunakan untuk memberikan kriteria yang tidak memiliki kepastian.
Misalkan anda ingin mencari nama produk yang dimulai dengan huruf c maka digunakan perintah berikut :

SELECT ProductID, ProductName
from Products
WHERE ProductName LIKE 'c%'


Perhatikan tanda % setelah huruf c tersebut, yang dapat diartikan sebagai : semua yang dimulai dengan c.

************************************************************************************

Klausa GROUP BY
Fungsi agregat yang telah dijelaskan sebelumnya hanya menampilkan satu baris hasil. Sering dibutuhkan untuk menampilkan rangkuman hasil perhitungan beberapa kelompok data dalam satu kali tampilan.
Misalnya anda ingin menghitung rata-rata dan jumlah produk yang terjual untuk setiap jenis produk. Untuk melakukan ini digunakan klausa GROUP BY yang berfungsi mengelompokkan data yang memiliki kriteria sama. Dengan demikian dapat dihasilkan suatu rangkuman hasil perhitungan untuk tiap kategori data. Tuliskan kode program berikut :

SELECT ProductID, SUM(Quantity)as Jumlah
from [Order Details]
GROUP BY ProductID

Perintah tersebut akan menghitung jumlah produk yang terjual untuk setiap ProductID dan mengelompokkan
hasilnya berdasarkan ProductID tersebut.

************************************************************************************


Statement INSERT

Untuk mengisikan data ke dalam suatu tabel digunakan perntah INSERT yang memiliki syntax umum sebagai berkut :

INSERT table (column list)
VALUES (value list)

Misalnya untuk mengisikan data customer baru dituliskan perintah berikut :

INSERT Customers (CustomerID, CompanyName, ContactName)
VALUES ('MJTR', 'Majuterus', 'Lisha')

Perintah tersebut mengisikan data di tabel Customers untuk tiga kolom yaitu CustomerID, CompanyName dan ContactName. Sedangkan kolom lain yang tidak diisi maka terisi dengan nilai default sesuai dengan desain tabelnya. Apabila desain tabelnya tidak mengijinkan nilai NULL maka anda harus mengisikan nilainya dalam perintah INSERT tersebut.

************************************************************************************

Statement DELETE

Statement DELETE merupakan kebalikan perintah INSERT. Perintah ini menghapus data yang terdapat di suatu tabel. Data dihapus per record atau per baris berdasarkan kriteria tertentu.
Penentuan kriteria record mana yang akan dihapus bisa dilakukan dengan menggunakan klausa WHERE. Misalkan anda ingin menghapus data semua customer yang berada di negara France.
Syntax umum statement ini adalah sebagai berikut :

DELETE FROM table_name
WHERE Condition


Untuk menghapus data customer yang berasal dari Mexico di tabel Customers maka perintahnya adalah :

DELETE FROM Customers
where Country= 'Mexico'

Atau anda bisa juga menghapus data berdasarkan CustomerID yang merupakan primary key di tabel tersebut.

DELETE FROM Customers
where CustomerID= ‘ALFKI’

Selain menggunakan WHERE, dapat juga digabungkan dengan operator LIKE dan BETWEEN untuk membuat kriteria yang lebih fleksible. Misalnya sebagai berikut :

DELETE FROM Orders

************************************************************************************

Statement UPDATE

Apabila anda ingin mengedit atau merubah suatu data tanpa menghapusnya maka digunakan perintah UPDATE . Perintah ini juga menggunakan kondisi tertentu dengan klausa WHERE sebagaimana perintah DELETE. Syntax umum statement UPDATE adalah sebagai berikut :

UPDATE table_name
SET Column1 = Value1, Column2 = Value2, …..
WHERE condition

Perintah ini melakukan perubahan pada kolom tertentu sebagaimana yang disebutkan dalam perintah SET. Perubahan dilakukan terhadap record yang memenuhi kriteria di klausa WHERE.
Misalkan anda ingin menaikkan harga produk sebesar 10% untuk semua barang yang memiliki CategoryID = 2, maka digunakan perintah berikut :

UPDATE Products
SET UnitPrice = UnitPrice * 1.1
WHERE CategoryID = 2

Harga barang terdapat di kolom UnitPrice sehingga kolom tersebut dikalikan dengan 1.1. Perintah tersebut akan menaikkan harga semua barang yang terdapat di tabel Products sesuai dengan kriteria CategoryID. Selain menggunakan kriteria WHERE perintah ini juga dapat digabungkan dengan operator LIKE dan BETWEEN sebagaiman statement DELETE diatas.
Contoh berikut menggambarkan penggunaan beberapa kriteria untuk mengupdate suatu data :

UPDATE Customers
SET Country = 'Indonesia',
ContactName = 'Lisha'
3.     SQL Dinamik
Meskipun statis SQL bekerja dengan baik dalam banyak situasi , ada kelas aplikasi di mana akses data tidak dapat ditentukan di muka. Misalnya, spreadsheet memungkinkan pengguna untuk memasukkan query , yang spreadsheet kemudian mengirimkan ke DBMS untuk mengambil data . Isi dari query ini jelas tidak dapat diketahui programmer ketika program spreadsheet yang tertulis .
Untuk mengatasi masalah ini , spreadsheet menggunakan bentuk embedded SQL yang disebut SQL dinamis . Tidak seperti pernyataan SQL statis, yang sulit -kode dalam program ini , pernyataan SQL dinamis dapat dibangun pada waktu berjalan dan ditempatkan dalam variable host tali. Mereka kemudian dikirim ke DBMS untuk diproses . Karena DBMS harus menghasilkan rencana akses pada saat run waktu untuk pernyataan SQL dinamis , dinamis SQL umumnya lebih lambat dari statis SQL . Ketika sebuah program yang berisi pernyataan SQL dinamis dikompilasi , dinamis pernyataan SQL tidak dilucuti dari program ini , seperti pada SQL statis . Sebaliknya , mereka digantikan oleh panggilan fungsi yang melewati pernyataan ke DBMS , pernyataan SQL statis dalam program yang sama diperlakukan secara normal .
Cara paling sederhana untuk mengeksekusi pernyataan SQL dinamis dengan Execute pernyataan SEGERA . Pernyataan ini melewati pernyataan SQL ke DBMS untuk kompilasi dan eksekusi .
Salah satu kelemahan dari Jalankan SEGERA pernyataan adalah bahwa DBMS harus melalui masing-masing dari lima langkah pengolahan pernyataan SQL setiap kali pernyataan dijalankan . Overhead yang terlibat dalam proses ini dapat menjadi signifikan jika banyak laporan dijalankan secara dinamis , dan itu adalah sia-sia jika laporan keuangan tersebut adalah sama . Untuk mengatasi situasi ini , SQL dinamis menawarkan bentuk dioptimalkan eksekusi disebut eksekusi disiapkan , yang menggunakan langkah-langkah berikut :
Program ini membangun sebuah pernyataan SQL dalam buffer , seperti halnya untuk Execute pernyataan SEGERA . Alih-alih variabel host , tanda tanya ( ? ) Dapat digantikan untuk konstan di mana saja dalam teks pernyataan untuk menunjukkan bahwa nilai konstanta akan diberikan kemudian. Tanda tersebut disebut sebagai penanda parameter .
Program ini melewati pernyataan SQL ke DBMS dengan pernyataan SIAPKAN , yang meminta agar mengurai DBMS , memvalidasi , dan mengoptimalkan pernyataan dan menghasilkan rencana eksekusi untuk itu . Program ini kemudian menggunakan Jalankan pernyataan ( bukan Jalankan pernyataan SEGERA ) untuk mengeksekusi pernyataan SIAPKAN di lain waktu . Melewati nilai parameter untuk pernyataan melalui struktur data khusus yang disebut Data di Area SQL atau SQLDA .
Program ini dapat menggunakan EXECUTE pernyataan berulang kali , memasok nilai parameter yang berbeda setiap kali pernyataan dinamis dijalankan .

Disiapkan eksekusi masih tidak sama dengan SQL statis. Dalam SQL statis , empat langkah pertama pengolahan pernyataan SQL berlangsung pada waktu kompilasi . Dalam eksekusi disiapkan , langkah-langkah ini masih berlangsung pada waktu berjalan , tetapi mereka dilakukan hanya sekali , pelaksanaan rencana berlangsung hanya bila EXECUTE yang disebut . Hal ini membantu menghilangkan beberapa kelemahan kinerja yang melekat dalam arsitektur SQL dinamis . Ilustrasi berikut menunjukkan perbedaan antara statis SQL , SQL dinamis dengan eksekusi langsung , dan SQL dinamis dengan eksekusi disiapkan