Selasa, 27 September 2011

TUGAS Pemograman Basis Data

NIM / NAMA  : 10.41010.0259 / Candra Kurniawan
Dosen : Tan Amelia
Tugas : Contoh; Stored Procedure, Function dan Trigger



  1. Stored Procedure
  • Dengan Parameter “IN”
CREATE PROCEDURE CostumersCity
@Countryname varchar (10)
AS SELECT CustomerID , CompanyName, ContactName, City, Country
FROM Customers
WHERE Country like @Countryname

EXEC CostumersCity 'UK'

  • Dengan Parameter “OUT”
ALTER PROCEDURE CountOrderByStatus
(@total nvarchar(225) OUTPUT)
AS SELECT CategoryName, ProductName, ProductSales, ShippedQuarter
FROM [Product Sales for 1997]
WHERE ShippedQuarter like @total

EXEC CountOrderByStatus 'Qtr 1'

  • Dengan Parameter “2 (Dua) OUT”
ALTER PROCEDURE Sales_from_Orders
@total_sales varchar (15) OUTPUT
AS
SELECT OrderID, EmployeeID, SUM (OrderID) as SumOfID
FROM Customers a, Orders b
WHERE a.CustomerID like @total_sales and a.CustomerID = b.CustomerID
group by OrderID, EmployeeID

exec sales_from_orders 'alfki'

DECLARE @total_sales_business int, @avg_sales_business int
EXEC Sales_from_orders @total_sales = @total_sales_business OUTPUT,
@avg_sales = @avg_sales_business OUTPUT

  • Dengan Parameter “IN dan OUT”

ALTER PROC Coba_product
@CountryName VARCHAR(25), @SumOfStock INT OUTPUT
AS
SELECT Suppliers.SupplierID, Suppliers.Country, Products.UnitsInStock,
SUM (ProductID) AS SumOfProducts
FROM Suppliers, Products
WHERE Country like @CountryName and UnitsInStock like @SumOfStock
GROUP BY Suppliers.SupplierID, Country, UnitsInStock

EXEC Coba_product 'UK', '10'
  • Dengan Parameter “INOUT”

CREATE PROC ProductSum
@max varchar(25) OUT
as select ProductName,SupplierID ,AVG (ProductID) as Average
from [Products]
where SupplierID like @max
group by ProductName, SupplierID

EXEC ProductSum '1'
  1. Function
  • Dengan menggunakan Parameter “IN”
Contoh 1:
CREATE FUNCTION lincrement (@l integer)
RETURNS integer
BEGIN
while @l > 100
begin
set @l=@l + 10
end
return @l
END

Contoh 2:
CREATE FUNCTION name (@uang money , @grade char (4))
returns char
begin
if @uang > 60000
begin
set @grade = 'B'
end
else
set @grade = 'C'
return @grade
end

select CategoryName, CategorySales, dbo.name (CategorySales, 'A') as CategoryGrade
from [Northwind].[dbo].[Category Sales for 1997]

  1. Trigger
  • Delete merupakan suatu trigger yang akan di jalankan ketika sebuah tabel yg di sertai oleh trigger tersebut di kenal operasi delete.
Contoh;
create trigger Delete1
on [Current Product List]
For Delete
As
declare
@IDE int
set @IDE = (select ProductID from [Current Product List])
begin
Delete from [Current Product List] where ProductID = @IDE
End
  • Update merupakan suat tirgger yang akan di jalankan ketika sebuah tabel yang disertai oleh trigger tersebut dikenai operasi update.
Contoh;
CREATE TRIGGER For_Update ON dbo.Products
FOR UPDATE
AS
DECLARE
@ID int, @jumlah smallint
set @ID = (select ProductID FROM Products)
set @jumlah = (SELECT UnitsInStock FROM [Products by Category])
BEGIN
UPDATE Products SET UnitsInStock = (@jumlah) WHERE ProductID = @ID
END
  • Insert merupakan suatu trigger yang akan di jalankan sebuah tabel yg di sertai oleh trigger tersebut dikenai operasi insert
    CREATE TRIGGER Ins_1 ON dbo.[Products by Category]
    FOR INSERT
    AS
    DECLARE @name nvarchar (40), @jumlah smallint
    set @name =  (SELECT ProductName FROM [Products by Category])
    set @jumlah = (SELECT UnitsInStock FROM [Products by Category])
    BEGIN
    UPDATE  Products  SET Products.UnitsInStock = (Products.UnitsInStock-  @jumlah) FROM INSERTED WHERE Products.ProductName = @name
    END
  

Minggu, 25 September 2011

Resume Pengantar Teknologi Informasi III

NIM / NAMA : 10.41010.0259/ Candra Kurniawan
Resume : Infrastruktur & Arsitektur Sistem Informasi
Dosen : Bpk.siswo


Infrastruktur & Arsitektur Sistem Informasi
  Infrastruktur  Informasi
  Infrastruktur TI
  Mainframe Lingkungan
  Lingkungan PC
  Distributed Computing
  Arsitektur Peer-to-peer (P2P)


Definisi Infrastruktur Informasi menurut :
  (Pironti, 2006)
            Semua orang, proses, prosedur, alat, fasilitas, dan teknologi yang mendukung penciptaan, penggunaan, transportasi, penyimpanan, dan penghancuran  informasi.
  (Hanseth, 2002)
            "a shared, evolving, open, standardized, and heterogeneous installed base“
Infrastruktur TI .
  Dalam teknologi informasi dan Internet, infrastruktur perangkat keras (fisikal) yang digunakan untuk menghubungkan komputer dan pengguna.
  Infrastruktur mencakup media transmisi, termasuk saluran telepon, saluran televisi kabel, dan satelit dan antena, dan juga router, repeater, dan perangkat lain yang mengontrol jalur transmisi.
  Infrastruktur juga mencakup perangkat lunak yang digunakan untuk mengirim, menerima, dan mengelola sinyal yang ditransmisikan.
Infrastruktur TI yang Ideal yaitu:
  TI menjadi key operational
  TI menjadi competitive advantage
  TI menjadi key enabler

Mainframe dan Lingkunganya.
  Mainframe adalah komputer yang berukuran  besar dan kuat yang digunakan terutama oleh organisasi-organisasi besar untuk aplikasi kritis.
  Mainframe memiliki prosesor lebih dari satu, sehingga lebih cepat dibanding dengan mini komputer.
  Mainframe secara umum membutuhkan ruangan yang besar dan khusus dimana faktor lingkungan yang terdiri dari temperatur, kelembaban udara ataupun gangguan asap dapatlah dimonitor.

PC dan Lingkunganya.
  Pada awalnya, komputer jenis ini diciptakan untuk memenuhi kebutuhan per-orangan (personal).
  Keunggulan harganya relatif murah, bentuknya kecil dan teknologi yang dimiliki diangap sudah memadai, maka personal komputer menjadi begitu cepat populer.
  Sekarang banyak digunakan oleh perusahaan untuk menyelesaikan pelbagai masalah yang ada diperusahaan.
  Software applikasi personal komputer terdiri  word processing, spreadsheets, databases, Web browsers dan e-mail clients, games, and software applikasi khusus.
  Komputer pribadi modern biasanya memiliki koneksi ke Internet, memungkinkan akses ke World Wide Web dan berbagai sumber daya lain.
          Contoh : Desktop ,Notebook/ Laptop, PDA/ Pocket Computer

Distributed Computing
  Komputasi terdistribusi adalah bidang ilmu komputer yang mempelajari sistem terdistribusi.
  Sistem terdistribusi terdiri dari beberapa komputer otonom yang berkomunikasi melalui jaringan komputer.
  Komputer berinteraksi satu sama lain untuk mencapai tujuan bersama.
  Program komputer yang berjalan dalam sistem terdistribusi disebut program terdistribusi.
  Fungsi sistem terdistribusi untuk memecahkan masalah komputasi.
  Dalam komputasi terdistribusi, masalah dibagi menjadi banyak tugas, masing-masing yang diselesaikan oleh satu komputer.
  Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya.

Arsitektur Peer-to-peer (P2P)
  Peer-to-peer (P2P) adalah arsitektur aplikasi terdistribusi yang  tugas atau beban kerja sama rata.
  Memiliki derajat yang sama antara komputer satu dengan yg lainya.

http://blog.stikom.edu/siswo/2011/09/07/tugas-resum-pti-s1-si-kelas-p3/#respond

Selasa, 20 September 2011

PBD Stored Procedure, Function, dan Trigger pada SQL Server


Nama/nim        : Candra Kurniawan/10.41010.0259
Dosen              : Tan Amelia
Tugas               : Pengertian dari Stored procedure,Function,dan Trigger pada SQL Server


Stored Procedure

             

       Stored Procedure adalah kumpulan perintah SQL yang diberi nama dan disimpan di server. Stored Procedure biasanya berisi perintah-perintah umum yang berhubungan dengan database pada server, dan menghasilkan sekumpulan record. Stored Procedure ditulis dalam bentuk sebuah script.
       Stored Procedure akan meningkatkan performasi database, meningkatkan sekuritas database. Performasi ditingkatkan melalui pemakaian tempat penyimpanan lokal (lokal terhadap database), program yang telah terkompilasi terlebih dahulu, dan pemakaian cache. Setiap kali sebuah perintah atau Stored Procedure dikirimkan ke server untuk diproses, server harus menentukan apakah dikirimkan ke server untuk diproses, server harus menentukan apakah pengirim mempunyai hak untuk menjalankan perintah tersebut dan apakah perintah tersebut benar, Setelah hak dan perintah diperiksa dan benar, SQL Server akan membuat rencana eksekusi.

      Stored Procedure lebih efisien dari perintah biasa, karena procedure disimpan si server pada saat dibuat dan dijalankan di server. Stored Procedure yang berisi sekumpulan perintah Transact-SQL akan dipanggil oleh sebuah perintah Transact-SQL.
Sebelum Stored Procedure dibuat, sintaks penulisan perintah dicek kebenarannya. Jika tidak Error, nama procedure disimpan di tabel SysObjects dan teksnya disimpan di tabel SysComments. Pertama kali Stored Procedure dijalankan, rencana eksekusi dibuat dan Stored Procedure dikompilasi. Pemrosesan berikutnya akan lebih cepat, karena SQL Server tidak perlu mengecek sintaks dan membuat rencana eksekusi atau mengkompilasi procedure.
      Sekali Stored Procedure dibuat, Anda dapat memanggilnya pada saat diperlukan. Cara ini meningkatkan modularitas dan memungkinkan pemakaian ulang sebuah program. Pemakaian ulang program akan memudahkan pemeliharaan sebuah database. Jika aturan bisnis berubah, Anda hanya perlu mengubah Stored Procedure, sedangkan pemanggilannya tetap.
      Stored Procedure dapat menerima parameter, dan menghasilkan parameter, memberikan umpan balik dalam bentuk kode status dan teks, dan dapat memanggil procedure lain. Stored Procedure menjamin sekuritas dengan isolasi dan enkripsi. User diberi hak untuk menjalankan Stored Procedure, tetapi tidak mempunyai hak untuk mengakses database secara langsung. Dengan enkripsi, user tidak dapat membaca perintah-perintah yang dipakai dalam Stored Procedure.

Tahap – tahap dalam menggunakan Stored Procedure  di Mysql yaitu :
  • Tahap pertama adalah membuat table pada database test dengan SQL Yog 
  • Taap kedua adalah mengisi data dengan SQL Yog
  • Tahap ketiga adalah merancang script stored procedure 
  • Tahap keempat adalah membuat program java untuk membuat dan menjalankan stored procedure
  • Tahap kelima adalah membuat file PHP untuk menjalankan program java di PHP
  • Tahap keenam adalah menjalankan program PHP tersebut di browser
  •  Tahap ketujuh adalah menampilkan hasil query dari stored procedure tersebut
  • Tahap kedelapan adalah menjalankan program PHP tersebut di browser
Pembuatan Strore Procedure
Syntax :



CREATE PROCEDURE procedure1               /* nama */
(IN parameter1 INTEGER)                            /* parameter */
BEGIN                                                        /* awal blok */
  DECLARE variable1 CHAR(10);                  /* variabel */
  IF parameter1 = 17 THEN                          /* awal IF */
   SET variable1 = 'burung';                          /* assignment */
  ELSE
   SET variable1 = 'kelelawar';                      /* assignment */
  END IF;                                                    /* akhir IF */
  INSERT INTO table1 VALUES (variable1);  /* statement */
END                                       

                                Function
             
             Function adalah suatu blok PL/SQL yang memiliki konsep sama dengan procedure, hanya saja pada function terdapat pengembalian nilai (return value).Karena function dapat mengembalikan sebuah nilai, function dapat diakses seperti layaknya sebuah variabel biasa.

Fungsi SQL Aggregate : fungsi yang menghasilkan nilai tunggal dari perhitungan sebuah nilai dari sebuah kolom, yaitu:
AVG() – memberikan nilai rata-rata dari sebuah kolom numerik
COUNT() – memberikan jumlah baris atau data yang sesuai dengan kriteria yang diberikan
FIRST() – memberikan nilai pertama dari sebuah kolom
LAST() – memberikan nilai terakhir dari sebuah kolom
MAX() – memberikan nilai terbesar dari sebuah kolom
MIN() – memberikan nilai terkecil dari sebuah kolom
SUM() – memberikan jumlah dari sebuah kolom numerik
Fungsi SQL Scalar : fungsi yang menghasilkan nilai tunggal dari nilai yang dimasukkan, yaitu :
UCASE() – merubah menjadi huruf kapital
LCASE() – merubah menjadi huruf kecil
MID() – mengekstrak karakter dari sebuah data teks
LEN() – menghitung jumlah karakter dari sebuah data teks
ROUND() – membulatkan data numerik ke nilai terdekat
NOW() – memberikan data tanggal dan waktu dari sistem
FORMAT() – memberikan format dari sebuah data yang akan ditampilkan

Bentuk Umum :

CREATE OR REPLACE FUNCTION nama_function (parameter_1, …)
RETURN tipe_data AS
variabel_1 tipe_data;

BEGIN
statemen_1;

RETURN nilai_yang_dikembalikan;
END;

Statemen RETURN tipe_data diatas menunjukkan bahwa function akan mengembalikan nilai dengan tipe data tertentu
Statemen RETURN nilai_yang_dikembalikan berfungsi untuk mengembalikan nilai yang telah diproses dalam function

Contoh Function Tanpa Parameter :
(1)
CREATE OR REPLACE FUNCTION tulis_teks RETURN VARCHAR2 AS
S VARCHAR2(20)
BEGIN
S := ‘HALLO SEMUA’;
RETURN S;
END;
/

(2)
SET SERVEROUTPUT ON
DECLARE
X VARCHAR2(20);
BEGIN
X := tulis_teks;
DBMS_OUTPUT.PUT_LINE(X);
END;
/

Contoh Function Dengan Parameter :
(1)
CREATE OR REPLACE FUNCTION
pangkat (bil INTEGER, n INTEGER)
RETURN INTEGER AS
HASIL INTEGER(10);
I INTEGER;
BEGIN
HASIL := 1;
FOR I IN 1..n LOOP
HASIL := HASIL * bil;
END LOOP;
RETURN HASIL;
END;
/
                                                                   TRIGGER

                Trigger adalah Stored Procedure khusus yang dijalankan secara otomatis pada saat atau sesudah modifikasi data. Perintah-perintah yang akan mengaktifkan Trigger adalah UPDATE, INSERT, dan DELETE. Trigger dipakai untuk menjaga integritas data dan mengimplementasikan aturan bisnis yang kompleks. Trigger dibuat dengan memakai bahasa Transact-SQL atau SQL Enterprise Manager. Tugas-tugas manajemen Trigger meliputi mengubah, mengganti nama, menampilkan, menghapus dan membuat Trigger tidak aktif.
                Trigger memakai dua tabel maya yaitu Inserted dan Deleted untuk mendeteksi modifikasi data. Untuk memprogram Trigger, Anda harus mendalami kedua tabel tersebut dan bahasa Transact-SQL. Untuk menjaga integritas data, Anda dapat memakai beberapa alternatif, yaitu Trigger atau Konstrain (Rule). Anda juga dapat memakai kunci utama dan kunci unik untuk mengidentifikasi baris dalam sebuah tabel secara unik. Anda juga dapat memakai nilai default dan domain untuk membatasi nilai-nilai yang diperbolehkan pada sebuah kolom. Referential Integrity dipakai untuk menjamin keabsahan hubungan antar tabel. Sebaliknya Anda memakai konstrain-konstrain tersebut sebelum memilih Trigger, karena Trigger dapat melakukan proses yang lebih rumit tetapi beban sistem lebih berat.
Pakailah Trigger untuk kasus-kasus berikut:
- Jika pemakaian cara deklaratif tidak dapat memenuhi kebutuhan yang diperlukan. Misalnya, buatlah Trigger untuk mengubah sebuah nilai numerik dalam tabel jika sebuah record di dalam tabel tersebut dihapus.
- Sebuah perubahan harus mengubah tabel-tabel lain yang terhubung. Misalnya jika data order ditambahkan, tabel lain yang menyimpan data stok akan berubah.
- Jika database didenormalisasi dan memerlukan cara otomasi untuk mengubah data redundan yang ada dibeberapa tabel.
- Jika sebuah nilai pada sebuah tabel harus divalidasi dengan data pada tabel lain.
- Jika diperlukan pesan kesalahan dan penangganan kesalahan secara khusus.
Kemampuan-kemampuan yang dimiliki Trigger:
- Trigger dapat menjaga referential integrity dengan melakukan perubahan data atau penghapusan kunci tamu (Foreign Key) di dalam database.
- Trigger dapat bekerja pada beberapa kolom dalam sebuah database bahkan pada objek di luar database. Anda juga dapat memakai Trigger pada View.
- Sebuah Trigger dapat melakukan beberapa aksi dan Trigger dapat diaktifkan oleh beberapa event. Misalnya Anda membuat sebuah Trigger yang akan diaktifkan jika terjadi proses INSERT, UPDATE atau DELETE. Dengan perintah Transact-SQL, Anda dapat mendefinisikan aturan bisnis untuk tiap event.
                 Selain kemampuan-kemampuan tersebut, Trigger juga mempunyai keterbatasan. Trigger tidak dapat dibuat pada sebuah tabel sistem atau temporer, meskipun perintah di dalama Trigger mengacu ke tabel sistem atau tabel temporer.
Trigger tidak dapat diaktifkan secara manual, tetapi diaktifkan secara otomatis jika terjadi event INSERT, UPDATE, dan DELETE. Dalam Trigger selalu berisi satu atau beberapa event tersebut sebelum perintah Transact-SQL didefinisikan. Tipe-tipe Trigger sesuai dengan event-nya. Misalnya Anda membuat sebuah Trigger UPDATE sehingga jika terjadi pengubahan data pada sebuah tabel, Trigger tersebut dapat diaktifkan. Sebuah Trigger dapat diaktifkan oleh beberapa event.
                  Pada saat terjadi INSERT atau UPDATE yang diaktifkan Trigger, Trigger menyimpan data baru atau data hasil modifikasi di dalam sebuah tabel yang bernama INSERTED. Jika terjadi DELETE yang mengaktifkan Trigger, data yang dihapus akan tersimpan ditabel yang bernama Deleted. Tabel tersebut berada dimemori dan dibaca oleh Trigger dengan perintah-perintah Transact-SQL. Kemampuan ini penting anda ketahui, karena pada umumnya Trigger membandingkan data dalam tabel Inserted dan Deleted dengan data baru sebelum proses Commit. Dengan kedua tabel tersebut, Trigger dapat melakukan proses Roll-Back.

Powered By Blogger