Rabu, 28 Januari 2009
Procedure SQL Server
Pendahuluan
Procedure pada dasarnya adalah sebuah program yang ditulis dalam bahasa Transact-SQL yang disimpan di dalam database SQL Server. Procedure dibentuk dari perintah, variabel serta alur logik yang terdapat pada SQL. Procedure bisa dijalankan secara manual ataupun dijalankan oleh program lain.
Jenis jenis Prosedur
Prosedur bisa dibagi bagi ke dalam prosedur lokal yang disimpan di dalam server lokal, atau prosedur remote yang disimpan didalam server yang lain. Prosedur juga bisa didefiniskan oleh user atau system procedures yang merupakan bagian dari server.
Komponen komponen prosedur :
1. Parameter
Prosedur bisa menyimpan 255 parameter dan sebuah kode hasil, parameter ini digunakan untuk komunikasi antara prosedur dan dunia luar, apabila kita menjalankan prosedur maka nilai akan dikirim dalam bentuk parameter.
2.Nama dan data tipe
Parameter harus memiliki nama yang eklusif dan diawali dengan simbol @. Kita juga diharuskan menyertakan tipe data
Contoh
Create procedure test1
@kode varchar(8),
@nilai int
Pada prosedur tersebut terdapat dua parameter yaitu kode dan nilai yang harus disertakan pada saat menjalankan prosedur.
3. Arah dari paremeter
Semua parameter yang dibuat dianggap sebagai parameter input, artinya mereka menerima data dari program yang menjalankan prosedur. Dengan menambahkan kata OUTPUT ke dalam definisi parameter, prosedure bisa mengembalikan nilai dari parameter ke dalam program yang memanggilnya.
Cara membuat prosedur dengan Enterprise manager :
Klik kanan Strore Procedure untuk menampilkan Shorcut
Tulislah perintah prosedure kemudian check Syntax
Kemudian klick ok maka prosedur telah dibuat.
Cara membuat prosedure dengan Query Analizer
Untuk menjalankan query analizer langkah langkahnya adalah :
1. Koneksikan dengan server
2. Pilih database yang akan digunakan
Jika kita lupa database yang digunakan maka perintah perintah SQL tidak akan menghasilkan hasil yang diinginkan.
3. Ketikkan perintah transact-SQL
Ketikkan perintah pembuatan procedure dan dieksekusi maka prosedur tersebut akan ada di Store Procedure
Prosedur yang dibuat oleh user dibagi menjadi dua yaitu :
1. Prosedur tanpa parameter
Misalkan ada sebuah tabel dengan rancangan :
Contoh prosedur tanpa parameter
Contoh 1 :
Create procedure proc_Tampil_MHS
As
Select * from Tmhs
Cara menjalankannya :
Exec proc_Tampil_MHS
Contoh 2 :
Create procedure proc_Tampil_Matakuliah
As
Select * from TMk
Cara menjalankannya :
Exec proc_Tampil_Matakuliah
2. Prosedur dengan parameter Misalkan ada sebuah tabel dengan rancangan :
Contoh prosedur dengan parameter
Contoh 1 : Dengan nama field
Create procedure Proc_input_mhs
@nim varchar(10),
@nama varchar(20),
@alamat varchar(50)
As
Insert into TMhs(nim,nama,alamat) values(@nim,@nama,@alamat)
Cara menjalankan :
Exec proc_input_mhs ‘2000’,’dewi’,’kuningan’
Contoh 2 : Tanpa field
Create procedure Proc_input_Matakuliah
@kode varchar(3),
@namamk varchar(20),
@sks int
As
Insert into Tmk values(@kode,@namamk,@sks)
Cara menjalankan :
Exec Proc_input_matakuliah ‘M01’,’Perancangan Basis data’, 3
Contoh 3 : Edit data Mahasiswa
Create Procedure proc_edit_mhs
@nim varchar(10),
@nama varchar(20),
@alamat varchar(50)
As
Update tmhs set nama=@nama,alamat=@alamat where nim=@nim
Cara menjalankan :
Exec proc_edit_mhs ‘2001’,’Ayu’,’Cirebon’
Contoh 4 : Hapus data mahasiswa
Create Procedure proc_hapus_mhs
@nim varchar(10)
As
Delete from tmhs where nim=@nim
Cara Menjalankan :
Exec proc_hapus_mhs ‘2001’
Penggunaan prosedur ini sangat memudahkan programer dan DBA dalam mengembangkan dan menyederhanakan tugas tugas, juga prosedur ini dapat digunakan juga sebagai FAQ dari permintaan user.
Langkah-Langkah Menjalankan MySql
1.Jalankan Program Apache
Masuk Pada menu start à Program à Apache Console à Start Apache
2.Jalankan Program MySql
Masuk Pada menu start à Program à MySQL
à MySQL-D
3. Menjalankan Command Prompt
Masuk Pada menu start à Program à Accessories
à Command Prompt
3. Perintah SQL dan Penjelasannya
1.cd\ : Berfungsi Untuk menuju Root dari (Drive C)
2.c\cd Apache : Masuk ke Folder Apache
3.c\Apache\cd mysql : Masuk ke Folder MySQL
4.c\Apache\cd mysql\cd Bin : Masuk ke Folder Bin
5.c\Apache\mysql\Bin\MySQL : Menjalankan Program MySQL
6.Show databases; à Melihat database
7.create database dbwiwin; à membuat database baru(dengan nama wiwin)
8.Use dbwiwin; à memilih database yang akan digunakan
9.Show tables; à melihat tabel yang sudah dibuat
10.create Table TMhs; à membual tabel TMhs
Create table TMhs (
NIM varchar (10) Primary key not null,
Nama varchar(30) not null,
Alamat text);
11.Cara Input data :
Beberapa Cara Untuk Menginputkan data :
1. Insert into TMhs(NIM,Nama,Alamat) Values
(‘2007101001’,’yuli’,’Jl.brigjen Darsono’);
2. Insert into TMhs Values
(‘2007101002’,’wiwin’,’Jl.Kaliwulu No.10’);
3. Insert into TMhs(NIM,Nama) Values
(‘2007101003’,’Ramanda’);
4. Insert into TMhs Values
(‘2007101004’,’Zahra’,’’);
5. Insert into TMhs Values
{‘2007101005’,’Pai Lahan’,’Jl.Penggung’),
(‘2007101005’,’Riyan’,’Jl.Sriwijaya’);
12. select * from tmhs; à menampilkan semua field yang ada dalam tmhs
Contoh Perintah MySQL dan Hasilnya :
1. C:\Documents and Settings\student>cd\ à C:\>
2. C:\> cd apache à c: apache>\
3. c: apache>\cd mysql à c: apache>\cd mysql>
4. c: apache>\cd mysql>cd bin à c: apache>\cd mysql>bin>
5. c: apache>\cd mysql>bin> mysql à
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 3.23.47-max-debug
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
Mysql >
6. mysql> Show databases; à
+----------+
Database
+----------+
mysql
test
+----------+
2 rows in set (0.02 sec)
7. mysql> create database dbwiwin;
à Query OK, 1 row affected (0.05 sec)
8. mysql>Use dbwiwin;
à Database changed
9. mysql> show tables;
à Empty set (0.00 sec)
10. mysql> create table tmhs (
-> nim varchar(10) primary key not null,
-> nama varchar(30) not null,
-> alamat text);
Query OK, 0 rows affected (0.01 sec)
11 . Cara Input Data :
mysql> insert into tmhs(nim,nama,alamat) values
-> ('2001101001','adi','jl.cipto');
Query OK, 1 row affected (0.02 sec)
mysql> insert into tmhs values
-> ('2001101002','budi','jl wahidin');
Query OK, 1 row affected (0.00 sec)
mysql> insert into tmhs(nim,nama) values
-> ('2001101003','andi');
Query OK, 1 row affected (0.00 sec)
mysql> insert into tmhs values
-> ('2001101004','cica','');
Query OK, 1 row affected (0.00 sec)
mysql> insert into tmhs values
-> ('2001101005','dewi','jl pilang'),
-> ('2001101006','edi','jl wahidin');
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
12. mysql> select * from tmhs;
+------------+------+------------+
nim nama alamat
+------------+------+------------+
2001101001 adi jl.cipto
2001101002 budi jl wahidin
2001101003 andi NULL
2001101004 cica
2001101005 dewi jl pilang
2001101006 edi jl wahidin
+------------+------+------------+
6 rows in set (0.02 sec)
Catatan :
a. apabila salah nenuliskan sql syntax pada mysql>
ketikan ; pada à ( à ; Enter)
contoh :
mysql> insert into tmhs(nim,nama,alamat) values
-> ;
maka akan muncul tulisan :
ERROR 1064: You have an error in your SQL syntax near '' at lin1
Lalu ualngi,tuliskan sql syntax yang benar, seperti :
mysql> insert into tmhs(nim,nama,alamat) values
-> ('2001101001','adi','jl.cipto');
Query OK, 1 row affected (0.02 sec)
b. Cara MengCopy dari Command Prommp ke Microsoft Office Word
Klik Kanan Pada command Prompt à Mark(Untuk Pilihan) à Dragà Enter à masuk ke Microsoft Office Word à ctrl+V atau
Klik Kanan Pada command Prompt à select all à Enter à masuk ke Microsoft Office Word à ctrl+V
4. Membuat query dari table relationship dbPenjualan
1. Membuat Tabel Supplier ( T_Supplier)
mysql> create table T_Supplier (
-> kode_Supplier varchar(10) primary key not null,
-> nama_supplier varchar(30) not null,
-> Alamat_Supplier text,
-> no_telp Varchar(14),
-> piutang integer);
Query OK, 0 rows affected (0.01 sec)
Input data pada T_Supplier
mysql> insert into T_Supplier values('001','yuli','jln.brigjen darsono','0231',5
00000);
Query OK, 1 row affected (0.05 sec)
Menampilkan T_Supplier
mysql> select * from T_Supplier;
+---------------+---------------+---------------------+---------+---------+
kode_Supplier nama_supplier Alamat_Supplier no_telp piutang
+---------------+---------------+---------------------+---------+---------+
001 yuli jln.brigjen darsono 0231 500000
+---------------+---------------+---------------------+---------+---------+
1 row in set (0.00 sec)
Minggu, 18 Januari 2009
basis data
Basis data merupakan komponen dasar dari sebuah sistem informasi dan pengembangan serta penggunaannya sebaiknya dipandang dari perspektif kebutuhan organisasi yang lebih besar. Oleh karena itu siklus hidup sebuah sistem informasi organisasi berhubungan dengan siklus hidup sistem basis data yang mendukungnya.
Proses perancangan basis data merupakan bagian dari siklus hidup basis data sebagai micro lifecycle.
SIKLUS KEHIDUPAN BASIS DATA SEBAGAI SIKLUS KEHIDUPAN MIKRO
Seperti telah disebutkan sebelumnya, sebuah sistem basis data merupakan komponen dasar sistem informasi organisasi yang lebih besar. Oleh karena itu siklus hidup aplikasi basis data berhubungan dengan siklus hidup sistem informasi. Langkah-langkah siklus hidup aplikasi adalah berikut ini :
Hal yang penting adalah mengetahui bahwa langkah-langkah siklus hidup aplikasi basis data dapat tidak berurutan, tetapi melibatkan beberapa langkah pengulangan yang biasanya disebut sebagai feedback loop. Sebagai contoh : masalah-masalah yang ditemui selama perancangan basis data mungkin harus mengumpulkan dan menganalisis kebutuhan-kebutuhan tambahan. Seperti yang digambarkan terdapat feedback loop diantara langkah-langkah yang sering terjadi.
Perancangan Basis data
Pada basis data yang digunakan oleh single user atau hanya beberapa user saja,perancangan basis data tidak sulit. Tetapi jika ukuran basis data yang sedang atau besar (25 - ratusan user yang berisikan jutaan bytes informasi dan melibatkan ratusan query dan program-program aplikasi, contoh : industri-industri, asuransi, hotel, travel, dll yang seluruhnya tergantung pada kesuksesan dari operasi-operasi basis datanya), perancangan basis data menjadi sangat kompleks. Oleh karena itu para pemakai mengharapkan penggunaan basis data yang sedemikian rupa sehingga sistem harus dapat memenuhi kebutuhan-kebutuhan seluruh user tsb.