Feeds:
Pos
Komentar

Archive for the ‘SQL’ Category

Trigger sederhana

TRIGGER DELETE SEDERHANA

Trigger dalam SQL Server berguna untuk menjaga validitas data dari adanya redudansi, terutama bila data tersebut
merupakan data yang berelasi dengan tabel-tabel lain yang ada di database.

di sini gue punya dua buah tabel yaitu tabel mDataSiswa dan tabel trPembayaran, dimana tabel mDataSiswa adalah
tabel master Siswa dan trPembayaran adalah tabel pembayaran SPP dari tiap siswa, so pasti primary key (NIS) di tabel
mDataSiswa harus ada di tabel trPembayaran sebagai foreign key.

untuk membuat trigger bisa melalui Enterprise Manager atau SQL Query Analyzer
contoh pembuatan triggernya adalah sbb:

CREATE TRIGGER tr_deleteSiswa ON mDataSiswa
FOR DELETE AS
DECLARE @NIS_bayar VARCHAR(10)
SELECT @NIS_bayar = NIS FROM Deleted
DELETE FROM trPembayaran WHERE NIS_bayar=@NIS_bayar

Menjalankannya cukup dengan perintah SQL : DELETE FROM mDataSiswa Where NIS=’1023416′
maka dari perintah di atas selain menghapus data Siswa dengan NIS=1023416 di tabel mDataSiswa juga akan menghapus
pembayaran SPP di trPembayaran dengan NIS_bayar=1023416

Keterangan Script:
1. baris pertama menerangkan pembuatan trigger dengan nama tr_deleteSiswa di tabel mDataSiswa
2. baris kedua memerintahkan trigger untuk melakukan Delete (ada 2 perintah yaitu INSERT,DELETE,UPDATE)
3. baris ketiga yaitu deklarasi variable ciptaan sendiri yang baiknya di samakan dengan nama field di tabel asal
4. baris keempat memasukkan nilai NIS ke variable ciptaan yang asalnya dari tabel Deleted (tabel deleted sendiri adalah
logical tabel yang tercipta saat trigger di jalankan, selain itu ada tabel Inserted bila perintah yang di Pakai adalah
INSERT atau UPDATE)
5. baris kelima adalah penghapusan record di tabel trPembayaran berdasarkan Nilai NIS yang ada di tabel Deleted

Read Full Post »

Stored Procedure

STORED PROSEDURE SEDERHANA

Dalam bahasa SQL kita mengenal adanya SELECT, INSERT, DELETE dan UPDATE, perintah ini wajib di kuasai
oleh seorang Database Administrator dan juga Programmer. Perintah SELECT di gunakan untuk membaca data,
Perintah INSERT di gunakan untuk memasukkan Data,
sedangkan DELETE di gunakan untuk menghapus dan perintah UPDATE di gunakan untuk memperbaharui data.

Di sini saya membuat sebuah Tabel di SQL Server dengan Nama mDataSiswa yang berisi field-field
NIS as varchar (10) Primary Key,
NamaSiswa as varchar (50),
Alamat as varchar (100),
Telepon as varchar (12),
JenisKelamin as tinyInt
NamaOrtu as varchar (50),
Pekerjaan as varchar (50)

Primary key di sini adalah NIS (Nomor Induk Siswa)

/*perintah SELECT, INSERT, DELETE dan UPDATE dalam T-SQL nya adalah Sbb.*/

SELECT * FROM mDataSiswa

INSERT INTO mDataSiswa (NIS,NamaSiswa,Alamat,Telepon,JenisKelamin,NamaOrtu,Pekerjaan)
VALUES (‘1023415′,’Dini’,’Komp.Perumahan’,’7756776′,’0′,’Pak Dini’,’Pegawai’)

DELETE mDataSiswa WHERE NIS=’1023415′

UPDATE mDataSiswa SET NamaSiswa=’Dina’, Alamat=’Komp. TNI’ , Telepon=’7675666′,
JenisKelamin=0,NamaOrtu=’Pak D’,Pekerjaan=’Pegawai’
WHERE NIS=’1023415′

Untuk menjalankan perintah SELECT, INSERT, DELETE, UPDATE di stored Procedure, anda perlu membuatnya di SQL Server 7/2000/2005,
misalkan Databasenya saya beri nama Sekolah, langkah pertama buka SQL Query Analyzer ketikkan:
use Sekolah [enter],
kemudian ketikkan perintah-perintah di bawah ini:

/* perintah membuat Stored Prosedurenya untuk SELECT*/
Create procedure sp_SelectmDataSiswa
@NIS varchar(10)
AS
BEGIN
SELECT * FROM mDataSiswa WHERE NIS=@NIS
END

/* menjalankan perintahnya */
exec sp_SelectmDataSiswa ‘1023415’

/* perintah membuat Stored procedure untuk INSERT */
Create Procedure sp_InsertmDataSiswa
@NIS varchar(10),
@NamaSiswa varchar(50),
@Alamat varchar(100),
@Telepon varchar(12),
@JenisKelamin tinyint,
@NamaOrtu varchar(50),
@Pekerjaan varchar(50)
AS
BEGIN
INSERT INTO mDataSiswa (NIS,NamaSiswa,Alamat,Telepon,JenisKelamin,NamaOrtu,Pekerjaan)
VALUES (@NIS,@NamaSiswa,@Alamat,@Telepon,@JenisKelamin,@NamaOrtu,@Pekerjaan)
END
/* menjalankan perintahnya */

exec sp_InsertmDataSiswa ‘1023416’,’Tini’,’Jalan Bahagia 1′,’7867898′,’1′,’Pak Komar’,’Pegawai’

/* perintah membuat Stored procedure untuk DELETE*/
Create Procedure sp_DeleteDataSiswa
@NIS varchar(10)
AS
BEGIN
DELETE mDataSiswa WHERE NIS=@NIS
END
/* menjalankan perintahnya */

exec sp_DeleteDataSiswa ‘1023416’

/* Perintah Stored procedure untuk UPDATE */
Create Procedure sp_UpdateDataSiswa
@NIS varchar(10),
@NamaSiswa varchar(50),
@Alamat varchar(100),
@Telepon varchar(12),
@JenisKelamin tinyint,
@NamaOrtu varchar(50),
@Pekerjaan varchar(50)
AS
BEGIN
UPDATE mDataSiswa SET NamaSiswa=@NamaSiswa, Alamat=@Alamat, Telepon=@Telepon,
JenisKelamin=@JenisKelamin,NamaOrtu=@NamaOrtu,Pekerjaan=@Pekerjaan
WHERE NIS=@NIS
END

/*menjalankan perintahnya */

exec sp_UpdateDataSiswa @NamaSiswa=’Dian’,@Alamat=’Gak Jelas’,@Telepon=’7689999′,
@JenisKelamin=’0′,@NamaOrtu=’Pak D’,@Pekerjaan=’Pegawai’,@NIS=’1023416′
perintah-perintah di atas akan otomatis tersimpan di SQL server di bagian Sekolah->Stored Procedures

Read Full Post »

Create Table

MEMBUAT TABLE DI SQL SERVER

Seperti pembuatan Database di posting sebelumnya, pembuatan table di SQL Server ada dua cara yaitu melalui Enterprise
Manager dan SQL Query Analyzer. Di sini kita akan membuat Table menggunakan SQL Query Analyzer:

Ada beberapa argument yang di pakai dalam pembuatan table, beberapa yang sering di pakai yaitu:
a. table_name : adalah nama table yang di buat
b. column_name : adalah nama column yang di buat
c. data_type : adalah tipe data dari setiap colom (varchar,nvarchar,int,tinyint)
d. IDENTITY : bisa di buat bersamaan dengan primary key sebagai column increement
e. Primary Key : adalah column dari table yang mempunyai nilai yang unik
f. Null / Not Null : membolehkan suatu column ada isinya atau tidak

tidak semua argument tersebut harus di pakai, tergantung kebutuhan. Contoh pembuatan Table sederhana adalah sbb:

A. Very Simple Create Table
CREATE TABLE myTable
(
no_id int,
nama varchar(50),
alamat varchar(100),
telepon varchar(12),
pekerjaan varchar(50)
)
hasil dari table di atas adalah semua column bisa di isi dengan null dan tidak ada primary key. untuk bentuk table yang
lebih sempurnanya adalah dengan menambahkan primary key dan Identity bila di perlukan contoh:

B. Simple Create Table
CREATE TABLE myTable
(
no_id int IDENTITY(1,1) PRIMARY KEY,
nama varchar(50) NOT NULL,
alamat varchar(100) NOT NULL,
telepon varchar(12) NULL,
pekerjaan varchar(50) NOT NULL
)
maksud dari IDENTITY(1,1) adalah peningkatan di mulai dari nomor 1 dan di tingkatkan 1 angka ke depan.

Read Full Post »

membuat Database

MEMBUAT DATABASE DI SQL SERVER.

Banyak cara membuat Database di SQL Server bisa menggunakan GUI di Enterprise Manager atau menuliskan script di
SQL Query Analyzer, di sini kita bikin Database memakai SQL Query Analyzer.

ada berbagai macam pembuatan database seperti

A. Very Simply Create a Database
Ketikkan : CREATE DATABASE nama_database
maka di result panel akan keluar tulisan :
The CREATE DATABASE process is allocating 0.63 MB on disk ‘nama_database’.
The CREATE DATABASE process is allocating 0.49 MB on disk ‘nama_database_log’.
SQL Server akan secara otomatis menciptakan nama_database.mdf

B. Simply Create a Database
Ketikkan :
CREATE DATABASE nama_database
ON
(
NAME = nama_database_dat,
FILENAME = ‘c:\program files\microsoft sql server\mssql\data\nama_database.mdf’,
SIZE = 4,
MAXSIZE = 10,
FILEGROWTH = 1
)
GO
maka di result panel akan keluar tulisan
The CREATE DATABASE process is allocating 4.00 MB on disk ‘nama_database_dat’.
The CREATE DATABASE process is allocating 1.00 MB on disk ‘nama_database_log’.
SQL Server akan secara otomatis menciptakan nama_database.mdf

C. Create a database that specifies the data and transaction log files
Ketikkan :
CREATE DATABASE nama_database
ON
(
NAME = nama_database_dat,
FILENAME = ‘c:\program files\microsoft sql server\mssql\data\nama_database.mdf’,
SIZE = 8,
MAXSIZE = 20,
FILEGROWTH = 1
)
LOG ON
(
NAME = nama_database_log,
FILENAME = ‘c:\program files\microsoft sql server\mssql\data\nama_database.ldf’,
SIZE = 4,
MAXSIZE = 10,
FILEGROWTH = 1MB
)
GO
maka di result panel akan keluar tulisan
The CREATE DATABASE process is allocating 8.00 MB on disk ‘nama_database_dat’.
The CREATE DATABASE process is allocating 4.00 MB on disk ‘nama_database_log’.

SQL Server akan secara otomatis menciptakan 2 buah file yaitu hyang berextensi .mdf dan .ldf

Terserah kepada anda mau menggunakan yang mana, tetapi bila menggunakan cara yang ketiga maka itu lebih baik karena selain
menciptakan file database nya anda juga menciptakan file lognya, dan cara ini sama seperti bila anda membuat database menggunakan
Enterprise Manager.

Read Full Post »