Post on 09-Apr-2018
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 1/34
Disusun oleh :
ABDULLAH ARIEF
(109510055650
TEKNIK INFORMATIKA-UNIVERSITAS ISLAM NEGERI SUSKA RIAU
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 2/34
Objectivesy Transact - SQL
y Deklarasi Variabel
y Menjalankan T-SQL
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 3/34
Transact SQLy Merupakan unit kerja logis yang berisi sekumpulan
perintah.
y Merupakan perantara antara program aplikasi denganSQL Server
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 4/34
Teknik Dasar T-SQLy Merupakan bahasa pemrograman Non Procedural,
dimana alur pemrograman tidak seperti bahasapemrograman biasa melainkan melalui Requestdan Response
y Transact SQL mengembangkan kemampuan SQLsehingga T-SQL dapat melengkapi SQL denganinstruksi logik.
y
Sehingga proses SQL Server dapat diproses lebihlanjut dengan menggunakan logic pemrogramanprocedural seperti fungsi, prosedur, loop, case, if dan lainnya.
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 5/34
Deklarasi Variabely Pembuatan transact SQL harus dimulai dengan
deklarasi variabel dan disusun dengan blokdiagram.
y Variabel-variabel yang dipergunakan harusdideklarasikan dahulu.
y Deklarasi variabel selalu dimulai dengan katakunci : Declare
y Nama variabel dalam T-SQL selalu dimulai dengankarakter @y Bentuk penulisan :
Declare @nama_variabel tipe_data
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 6/34
Declare @nama_variabel tipe_data
y Keterangan :
y @nama_variabel : nama dari variabel
y Tipe_data : tipe data dari variabel
y
Contoh:Declare
@kode Char(5),
@nama Varchar(30),
@Harga Int
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 7/34
y Contoh pengisian nilai ke variabel setelahdideklarasikan :
Select @kode = FD001Select @nama = Flash Disk Kingston
Select @harga = 150000
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 8/34
y CONTOH, coba ketikkan perintah berikut di Query Analyzer
DECLARE@KODE CHAR(5),@NAMA VARCHAR(30),@GAJI INT
SELECT @KODE = 'K0008'SELECT @NAMA= 'LINTANG'
SELECT @GAJI = 4000000PRINT 'DATA KARYAWAN'PRINT '============='PRINT @KODEPRINT @NAMA PRINT @GAJI
PRINT '============='
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 9/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 10/34
y Selain menggunakan perintah select untukmemasukkan/setting variabel, dapat juga
dipergunakan perintah SETy Penggunaan SET lebih direkomendasikan
dibandingkan menggunakan SELECT untuk variabel.
y Contoh :
SET @nama = Kiki
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 11/34
y Penggunaan SET :
DECLARE
@KODE CHAR(5),
@NAMA VARCHAR(30),
@GAJI INT
SET @KODE = 'K0008'
SET @NAMA = 'LINTANG'
SET @GAJI = 4000000
PRINT 'DATA KARYAWAN'
PRINT '====================='
PRINT 'Kode :' + @KODE
PRINT 'Nama :' + @NAMA
PRINT 'Gaji :Rp.' + str(@GAJI)
PRINT '====================='
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 12/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 13/34
Mengisi Variabel dengan nilai dari
tabely Apabila anda ingin mengisi suatu variabel dengan nilai
yang ada pada suatu tabel, dapat dilakukan dengan
menggunakan perintah SELECT.y Contoh penggunaan :
Declare @nama varchar(15)
Select @nama = nama
From mahasiswa
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 14/34
y Contoh penggunaan dengan kondisi :
Declare @nama varchar(15)
Select @nama = namaFrom mahasiswa
Where kode = 20063218
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 15/34
y Suatu variabel dapat dipergunakan untuk
mengambil nilai dari suatu perintah query ataudari suatu tabel.
y Contoh : mencetak total gaji karyawandepartemen IT yang memiliki kode divisi D0001
Declare @total int
select @total = sum(gaji) from karyawan
where kode_divisi = 'D0001'
print 'Total gaji karyawan departement IT adalahRp. + str(@total)
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 16/34
y Berikut data dari tabel karyawan
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 17/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 18/34
y Contoh lain, mengisi variabel dengan nilai data darisuatu tabel.
y
Coba hitung berapa banyak transaksi yang dilakukanoleh pasien dengan kode PS005 pada tabel TrKlinik.
y Informasi yang ditampilkan adalah kode pasien dantotal transaksi
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 19/34
y Seluruh data pada trklinik
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 20/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 21/34
y Contoh lain, mengisi variabel dengan nilai data yangdiambil dari dua tabel.
y Tampilkan kode pasien PS005 dan nama pasien.
y Untuk menampilkan data kode dan nama pasien harusmelakukan Join dua tabel TrKlinik dengan tabelPasien.
y Informasi yang ditampilkan adalah kode pasien dan
Nama Pasien
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 22/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 23/34
Variabel Globaly Selain penggunaan variabel lokal. SQL Server juga
menyediakan variabel global
y Variabel global merupakan variabel yang disiapkanSQL Server untuk memberikan informasi kepadaClient.
y Mengambil nilai atau informasi dari suatu database.
y Sifatnya Read Only
y Nama variabel selalu diawali dengan @@
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 24/34
y Daftar beberapa Variabel Global
Nama Variabel Keterangan
@@error Bernilai bulat yang menyatakan nomor error. Jika
varaibel tersebut tidak sama dengan Nol, maka sistem
memberikan indikasi terjadi error dan identifikasi error
dinyatakan dengan angka
@@cursor_rows Memberikan nilai balik dari cursor yang terakhir
diproses
@@rowcount Memberikan nilai balik berupa jumlah baris (rows) yang
terpengaruh oleh instruksi terakhir.
@@identity Memberikan nilai otomatis setiap kali proses Insert
dilakukan. Nilai ini adalah nilai identitas dari record yang
diproses
@@spid Server process ID
Dan Lain Lain «««««««««««««««««««««.
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 25/34
y Untuk daftar variabel global yang lebih lengkap beserta
informasinya dapat dilihat di Transact-SQL Help.y Transact-SQL Help terdapat di SQL Query Analyzer
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 26/34
y
Contoh 1 penggunaan variabel global :buat perintah query yang bertujuan untukmenghapus data dari tabel Pasien yang memilikikode PS011.
Lalu dilakukan pengecekan, jika tidak ada record yang memiliki kode PS011, maka data tidak jadidihapus, dan diberi komentar Data pasien tidakada, tidak ada data yang dihapus
Tetapi bila ada record dengan kode PS011, makadata jadi dihapus, dan diberi komentar Datapasien ada, dan telah dihapus
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 27/34
y Sebelumnya dilihat dahulu seluruh data pada tabel
pasien
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 28/34
y Dengan menggunakan @@rowcount, maka dapat diperiksaapakah ada baris/record pasien yang memiliki kode PS011.
y Jika ada maka @@rowcount bernilai sebanyak record yangada
y Jika tidak ada maka @@rowcount bernilai 0
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 29/34
y
Contoh 2 penggunaan variabel global :buat perintah query yang bertujuan untukmenghapus data pasien yang memiliki kode PS011dari tabel TrKlinik
Lalu dilakukan pengecekan pada tabel TrKlinik, jika tidak ada record yang memiliki kode PS011,maka data tidak jadi dihapus, dan diberi komentarData pasien tidak ada, tidak ada data yangdihapus
Tetapi bila ada record dengan kode PS011, makadata jadi dihapus, dan diberi komentar Datapasien ada, dan telah dihapus
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 30/34
y Seluruh data pada trklinik
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 31/34
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 32/34
y
Contoh 3 penggunaan variabel global :buat perintah query yang bertujuan untukmenghapus data pasien yang memiliki kode PS015dari tabel TrKlinikLalu dilakukan pengecekan pada tabel TrKlinik, jika tidak ada record yang memiliki kode PS015,maka data tidak jadi dihapus, dan diberi komentarData pasien tidak ada, tidak ada data yangdihapus
Tetapi bila ada record dengan kode PS015, makadata jadi dihapus, dan diberi komentar Datapasien ada, dan telah dihapus
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 33/34
y Seluruh data pada trklinik
8/8/2019 Transact - SQL for Presentasi
http://slidepdf.com/reader/full/transact-sql-for-presentasi 34/34