Masukkan Alamat Email Anda

Untuk mendapatkan update artikel dari blog ini:

Rabu

Mysql,Pengertian Procedure

Pada postingan ini saya akan membahas sedikit tentang procedureprocedure yang digunakan dalam membangun suatu basis data atau yang sering disebutkan dengan database dengan menggunakan bahasa pemrograman mysql.untuk lebih memahami apa yang dimaksud dengan procedure..berikut pengertian singkat mengenai procedure

Pengertian Procedure
Procedure Adalah program yang disimpan dalam database seperti halnya data. Hal ini sebenanya cukup tidak umum, karena kita mengharapkan yang disimpan dalam database adalah data bukannya program.
A.Pembahasan tentang Stored Procedure :
1. Adanya dukungan Stored Procedure akan membuat program anda lebih ringkas dan mudah untuk dikembangkan.
Dengan stored procedure : algoritma yang lama dimasukkan ke dalam stored procedure di SQL server, disimpan di server (misal dengan nama DoProsesStock). Pada program, cukup ditulis perintah SQL : Exec DoProsesStock StartDate, EndDate . Selanjutnya, SQL Server akan mengeksekusi perintah proses yang anda inginkan. satu kali perubahan proses, akan berlaku untuk semua user yang terhubung ke database, bahkan saat program masih berjalan di tiap komputer user (program tidak perlu dimatikan dulu).
2. Stored procedure akan menyederhanakan perintah SELECT * FROM table yang memang rumit, misal untuk laporan. Perintahnya dan algoritma nya sama dengan yang nomor 1. Bayangkan bila anda harus membuat perintah SELECT dari sebuah tabel, tapi juga diikuti kondisi2 tertentu yang biasanya berhubungan dengan data dari tabel lain.
3. Stored procedure akan membantu anda dalam membuat laporan yang sifatnya analisa data, yang biasanya memerlukan banyak sekali tabel2 pembantu.
Bagaimana bisa? Stored procedure, dapat membuat tabel temporary yang disimpan sementara di dalam memori server selama proses berlangsung, atau bisa juga selama program connect.
4. Stored procedure mengefisienkan proses, sehingga semua daya hanya akan dipusatkan di komputer server saja. Komputer client dapat berupa pentium 233 MMX, tapi dapat melakukan serangkaian proses yang rumit dan tetap tidak lambat. Karena bukan client yang berpikir, tetapi server yang melakukan pekerjaan, jadi client hanya akan mendapatkan data jadinya saja.
Pembuatan Stored Procedure :
anda dapat membuat stored procedure dengan program SQl Browser apa saja. bahkan cukup dengan sebuah TMemo, ADOConnection dan ADOQuery, anda sudah dapat membuat form untuk membuat stored procedure.
tapi yang paling mudah digunakan adalah Query Analizer dari MS SQL Server.
Syntax yang digunakan adalah :
CREATE PROCEDURE nama_stored_procedurenya @parameter1 tipe_data, @parameter2 2 tipe_data AS isi procedurenya.

Penjelasan
1. nama stored_procedure tidak boleh sama dengan nama fungsi internal, misal CREATE PROCEDURE SUM, tidak boleh ada spasi, tapi bisa menggunakan karakter _
2. Untuk membuat stored procedure gunakan perintah CREATE, untuk mengedit gunakan ALTER , untuk menghapus gunakan DROP.
perintah CREATE, ALTER, DROP dapat digunakan juga untuk membuat TABLE, VIEW, TRIGGER, FUNCTION, misal CREATE VIEW, ALTER FUNCTION,dsb
3. SQL Server mengenali parameter/variabel karena ada tanda @, contoh : @nama_barang char(50), @tanggal datetime, dsb
4. Untuk deklarasi parameter di Stored Procedure gunakan DECLARE
contoh : DECLARE @StartDate datetime, @EndDate datetime, dst..
5. Untuk memasukkan nilai ke sebuah parameter, gunakan SET atau SELECT, contoh :
SET @nama='Itanium'
SET @Web='Klik-kanan' (perintah SET hanya bisa untuk 1 variabel saja)
SELECT @nama='Itanium', @Web='Klik-kanan' (perintah SELECT bisa digunakan untuk banyak variabel)
6. Untuk mengambil nilai dari sebuah field dari tabel ke dalam variabel dapat juga menggunakan SET / SELECT , misal : SET @nama= SELECT nama FROM user WHERE login='Itanium') selalu gunakan anda(),perintah ini valid bila data yang ditemukan hanya 1, bila lebih, maka varibale @nama tidak akan ada nilai nya.
7. Untuk mengambil data dalam jumlah banyak, misal seperti array atau StringList, gunakan temporary tabel.untuk pembahasan lebih lengkap, tunggu posting berikut nya.
Contoh pembuatan Stored Procedure. Kita akan membuat sebuah Stored procedure yang berfungsi untuk menggantikan perintah SELECT yang rumit, misal untuk laporan stok barang.

dalam contoh ini ada 3 tabel yang digunakan.
1. Barang (IDBarang, NamaBarang, IDSatuan)
2. Satuan (IDSatuan, Satuan)
3. StockBarang (Tanggal, IDBarang, SAwal,Masuk,Keluar,SAkhir)
laporan yang diminta adalah untuk menampilkan stock sesuai dengan periode tertentu (bisa per hari, bisa juga per minggu, tergantung inputan StartDate dan EndDate).
SQL untuk pembuatan Stored Procedure nya :

CREATE PROCEDURE LapStockBarang1 @StartDate varchar(10), @EndDate varchar(10) AS
DECLARE @tgl1 datetime, @tgl2 datetime
**(variabel StartDate tidak bisa langsung datetime karena perintah EXEC LapStockBarang dalam bentuk string)
CREATE TABLE #TStock (IDBarang varchar(5), SAwal real, Masuk real, Keluar real)
CREATE TABLE #TStock2 (IDBarang varchar(5), SAwal real, Masuk real, Keluar real, SAkhir real)
** buat temporary table , tanda # menandai bahwa tabel ini hanya akan ada saat proses stored procedure.

SELECT @tgl1= CONVERT(datetime,@StartDate,103), @tgl2=CONVERT(datetime,@EndDate,103)
** convert varchar(string) ke tipe datetime, gunakan perintah CONVERT(tipe,variabel,format). Format 103 adalah format dd/mm/yyyy
INSERT INTO #TStock (IDBarang, SAwal)
SELECT (IDBarang, SAwal)
FROM StockBarang
WHERE tanggal= @tgl1
** masukkan saldo awal pada tanggal bulan itu
INSERT INTO #TStock (IDBarang, Masuk, Keluar)
SELECT IDBarang, SUM(Masuk), SUM(Keluar)
FROM StockBarang
WHERE tanggal BETWEEN @tgl1 AND @tgl2
GROUP BY IDBarang
** masukkan JUMLAH dari masuk dan keluar
INSERT INTO #TStock2 (IDBarang, SAwal, Masuk, Keluar)
SELECT IDBarang, SUM(SAwal), SUM(Masuk), SUM(Keluar)
FROM #TStock
GROUP BY IDBarang
** sekarang gabungkan data2 nya
UPDATE #TStock2 SET SAkhir= SAwal + Masuk - Keluar
SELECT t.*, b.NamaBarang, s.Satuan
FROM #TStock2 AS t, Barang AS b, Satuan AS s
WHERE t.IDBarang=b.IDBarang
ND b.IDSatuan=s.IDSatuan
ORDER BY b.IDBarang
Nah perintah di program cukup seperti ini :
EXEC LapStockbarang '01/01/2005', '31/01/2005'

0 komentar:

Poskan Komentar

HOT INFORMASI


Menerima jasa pembuatan website untuk TA/skripsi, perusahaan, UKM, Sekolah dll. Harga tejangkau, dan disesuaikan dengan konten yang diminta harga mulai dari Rp. 800 ribu-an (nego).

NB. Perancangan atau alur program bisa ditentukan sesuai dengan keinginan anda Untuk perusahaan, sekolah, UKM atau instansi fasilitas maintenance selama 3 bulan. Perancangan atau alur yang anda inginkan bisa dikirim melalui email :alihuse1n@yahoo.com Untuk informasi lebih lanjut anda bisa menggunakan fasilitas chatting yang ada di pojok kanan atas, atau bisa menghubungi kami di 0813 2355 0005
Berikut Sedikit Review Tentang Website yang pernah saya buat :
.



asal usul pengunjung


free counters
Sonic Run: Internet Search Engine Search Engine DirectoryVault.com Free Web Submission Banner AddMe Submit Your Site To The Web's Top 50 Search Engines for Free!

blogarama - the blog directory
Review sauri-sofyan.blogspot.com on alexa.com
Get followers

LAYANAN SMS GRATIS

Collection


Blogging Tip Blogs - BlogCatalog Blog Directory RSS Search ReadABlog.com Blog Search Engine blog search directory [Valid Atom 1.0] Increase Page Rank Link Exchange British Blogs Personal Blogs AntiSpam Msn bot last visit powered by MyPagerank.Net Yahoo bot last visit powered by MyPagerank.Net Powered by Mysiterank Blog Search: The Source for Blogs The Republic of Indonesian Blogger | Garuda di Dadaku Free Traffic Tools! Austrosearch rantop.com Google Pagerank Powered by  MyPagerank.Net


Certified Backlinks.
Site Class:


MYBLOGLOG COMMUNITY

  © Terima Kasih Telah Berkunjung disauri-sofyan.blogspot.com

Kembali Ke atas