SlideShare a Scribd company logo
1 of 20
Download to read offline
J U R U S A N T E K N O L O G I I N F O R M A S I
Advanced Database Course
13. Pemrograman dengan TSQL Bagian-1
Yoppy Yunhasnawa, S.ST., M.Sc.
Topics
2
• Konsep Pemrograman
• Kontrol Alur Dasar pada T-SQL
• Rutin pada T-SQL
04/12/21 3
Topik-1: Konsep Pemrograman
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Konsep Pemrograman
• Manakah di bawah ini yang termasuk “Bahasa Pemrograman”?
• HTML
• XML
• CSS
• JavaScript
• Java
• C++
• JSON
• SQL
• Mengapa suatu bahasa bisa disebut sebagai “Bahasa Pemrograman” dan mengapa yang lainnya tidak?
• Kata kuncinya adalah pada ada atau tidaknya fitur “Kontrol Alur” atau “Control of Flow”.
• Control of Flow adalah Fitur yang memungkinkan jalannya baris kode tidak monoton lurus dari baris awal ke baris akhir
(atas à bawah).
• Bisa dibelok-belokkan sesuai keinginan.
• Kontrol alur banyak macamnya, tetapi yang paling utama:
• Blok
• Perulangan
• Pencabangan
• Rutin (Routine)
04/12/21 Jurusan Teknologi Informasi - Politeknik Negeri Malang 4
• Blok
• Kelompok baris perintah.
• Di bahasa pemrograman yang seperti C biasanya ditandai dengan { dan }
• Perulangan
• Fitur yang memungkinkan suatu blok yang ditulis 1x, bisa dieksekusi secara berulang-ulang secara otomatis.
• Biasanya berupa FOR, DO..WHILE
• Pencabangan
• Fitur yang memungkinkan blok tertentu dijalankan/tidak dijalankan berdasarkan kondisi tertentu.
• Ditandai dengan IF, SWITCH..CASE
• Rutin (Routine)
• Adalah blok yang memiliki input tertentu dan mengolah input tersebut dengan proses tertentu sehingga
menghasilkan sesuatu.
• Dibeberapa Bahasa pemrograman biasanya rutin dibedakan menjadi 2:
• Prosedur à Tidak memiliki nilai balik (RETURN value).
• Fungsi à Memiliki nilai balik.
04/12/21 Jurusan Teknologi Informasi - Politeknik Negeri Malang 5
1. Konsep Pemrograman
Kontrol Alur
04/12/21 6
• Sebuah bahasa tanpa keempat kontrol alur tersebut, pada umumnya tidak bisa dikatakan sebagai bahasa
pemrograman.
• Contoh: HTML, XML, CSS
• Lalu bagaimana dengan SQL?
• Aslinya, SQL BUKAN sebuah bahasa pemrograman.
• Melainkan hanya sebuah bahasa deklaratif yang digunakan untuk memerintah DBMS dalam mengolah data.
• Kemudian Microsoft menambahkan elemen-elemen pemrograman bada SQL buatan mereka yaitu Transact
SQL.
• Sehingga menjadi laris, dan akhirnya diikuti oleh Oracle (PL-SQL), Postgre (PG-SQL), dan akhir-akhir ini (MySQL
versi > 8.0) juga menambahkan beberapa fitur pemrograman di dalamnya.
• Pada T-SQL:
1. Konsep Pemrograman
Pemrograman dengan SQL
No. Kontrol Alur Ditandai dengan:
1 Blok BEGIN .. END
2 Perulangan WHILE
3 Pencabangan IF..ELSE
4 Rutin FUNCTION, PROCEDURE
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 7
Topik-2: Kontrol Alur Dasar pada T-SQL
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 8
• Adalah sekumpulan baris perintah.
• Pada T-SQL, blok diawali dengan ‘BEGIN’ dan diakhiri dengan ’END’;
• Ingat: “GO” bukan blok!
2. Kontrol Alur Dasar pada T-SQL
Blok
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 9
• Pada T-SQL, perulangan ditandai dengan kata kunci ’WHILE’
• Jika perintah yang ingin diulang lebih dari satu baris, maka harus diletakkan dalam sebuah blok.
• Diawali dengan ‘BEGIN’ dan diakhiri dengan ’END’;
2. Kontrol Alur Dasar pada T-SQL
Perulangan
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 10
• Pada T-SQL, pencabangan ditandai dengan kata kunci ’IF..ELSE’.
• Juga perlu ‘BEGIN..END’ jika lebih dari 1 baris.
2. Kontrol Alur Dasar pada T-SQL
Pencabangan
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 11
Topik-3: Rutin pada T-SQL
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
• Rutin (Routine) Blok perintah yang memiliki input yang diproses, dan
akan menghasilkan sesuatu.
• Sesuatu tersebut ada yang:
• Berupa nilai (value) yang diteruskan ke baris berikutnya Function.
• Berupa perubahan yang bukan berupa nilai Stored Procedure
• Pada T-SQL:
• Walaupun Procedure tidak memiliki nilai balik, tetapi ia bisa mengubah
data.
• Functon hanya bisa membaca data saja.
• Pada SQL Server, keduanya dapat dijumpai pada folder ‘Programmability’
di Object Explorer.
04/12/21 12
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
FUNCTION
04/12/21 13
• Function adalah routine yang mengembalikan nilai.
• “Mengembalikan” à Output yang dihasilkan berupa suatu nilai yang bisa dibaca oleh baris kode
yang memanggil fungsi tersebut.
• Pada SQL Server fungsi ditandai dengan ‘(‘ dan ‘)’.
• Jika dilihat dari siapa yang membuat, terdapat 2 jenis fungsi:
• Built-in function à Dibuat oleh Microsoft, kita tinggal menggunakan saja.
• User-defined function à Kita membuat sendiri.
• Untuk membuat function sendiri, digunakan sintaksis: ‘CREATE FUNCTION’.
• Agar bisa dijalankan, sintaksis tersebut haruslah berada sendirian dalam sebuah batch.
• Diapit oleh dua buah ‘GO’.
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
FUNCTION: Cara Membuat
04/12/21 14
• Contoh: Membuat fungsi untuk menentukan harga produk ‘MAHAL’ atau ‘MURAH’ berdasarkan
perbandingan dengan rata-rata harga semua produk yang ada.
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
FUNCTION: Cara Memanggil
• Untuk memanggil function kita harus
menggunakan keyword SELECT.
• Apabila tidak diberi alias, maka kolom yang
dihasilkan tidak akan ada namanya.
04/12/21 15
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
PROCEDURE
04/12/21 16
• Function adalah routine yang tidak bisa mengubah data.
• Apabila ingin membuat sebuah rutin yang bisa mengubah data, maka kita harus membuat sebuah
STORED PROCEDURE.
• Stored procedure tidak memiliki RETURN VALUE, tetapi pada pendefinisiannya, ia bisa
ditambahkan statement-statement DML.
• Apabila sangat terpaksa, STORED PROCEDURE dapat diakali agar ia seolah-olah memiliki return
value.
• Dengan menambahkan keyword OUTPUT pada saat membuatnya.
Jurusan Teknologi Informasi - Politeknik Negeri Malang
1. Rutin pada T-SQL
PROCEDURE: Membuat dan memanggil
04/12/21 17
• Untuk memanggil, digunakan keyword EXEC atau EXECUTE.
• Nama parameternya ditulis, tidak menggunakan kurung buka dan tutup.
• Contoh: Membuat procedure untuk memeriksa apakah kolom ‘shipregion’ bernilai NULL, jika NULL, maka akan
diganti nilainya dengan string ‘Not Available’.
Jurusan Teknologi Informasi - Politeknik Negeri Malang
Pertanyaan?
04/12/21 18
Jurusan Teknologi Informasi - Politeknik Negeri Malang
04/12/21 19
Jurusan Teknologi Informasi - Politeknik Negeri Malang
Tugas
• Buatlah sebuah fungsi yang menampilkan:
• ‘SD’ apabila pada parameternya dimasukkan angka 1-6
• ‘SMP’ apabila dimasukkan angka 7-9
• ‘SMA’ apabila 10-12.
• Buatlah sebuah stored procedure yang apabila dijalankan akan menyalin seluruh struktur maupun isi
dari tabel HR.Employees ke sebuah tabel baru dengan nama HR.Employees_Backup.
• Kumpulkan bersama dengan SQL yang sudah Anda buat hari ini ke Google Classroom.
04/12/21 20
Jurusan Teknologi Informasi - Politeknik Negeri Malang

More Related Content

Similar to Database Programming with TSQL Part 1

Prak sinyal sistem_1
Prak sinyal sistem_1Prak sinyal sistem_1
Prak sinyal sistem_1alvinwidan2
 
pengenalan algoritma komputasi untuk kuliah
pengenalan algoritma komputasi untuk kuliahpengenalan algoritma komputasi untuk kuliah
pengenalan algoritma komputasi untuk kuliahDikyAnggoro2
 
pengenalan algoritma komputasi sains untuk kuliah
pengenalan algoritma komputasi sains untuk kuliahpengenalan algoritma komputasi sains untuk kuliah
pengenalan algoritma komputasi sains untuk kuliahDikyAnggoro2
 
Denormalisasi data1-basisdata
Denormalisasi data1-basisdataDenormalisasi data1-basisdata
Denormalisasi data1-basisdataAyu_lestari
 
Laporan hasil praktikum modul i pengenalan pascal
Laporan hasil praktikum modul i pengenalan pascalLaporan hasil praktikum modul i pengenalan pascal
Laporan hasil praktikum modul i pengenalan pascalMeycelino A. T
 
RPP PLC Elektronika
RPP PLC ElektronikaRPP PLC Elektronika
RPP PLC Elektronikad_bilqism26
 
Part 14 store proceduree
Part 14  store procedureePart 14  store proceduree
Part 14 store procedureeDenny Yahya
 
Bab 4 evaluasi kinerja
Bab 4   evaluasi kinerjaBab 4   evaluasi kinerja
Bab 4 evaluasi kinerjajatinegara
 
Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)Rifky A Ayub
 
Audit Trail Comparison Oracle & PostgreSQL
Audit Trail Comparison Oracle & PostgreSQLAudit Trail Comparison Oracle & PostgreSQL
Audit Trail Comparison Oracle & PostgreSQLNein Raka
 
Rekayasa web part 4 khaerul anwar
Rekayasa web part 4 khaerul anwarRekayasa web part 4 khaerul anwar
Rekayasa web part 4 khaerul anwarKhaerul Anwar
 
arsitektur sistem operasi modern
arsitektur sistem operasi modernarsitektur sistem operasi modern
arsitektur sistem operasi modernfitrahsyahran
 
Tugaswarehosdio2003
Tugaswarehosdio2003Tugaswarehosdio2003
Tugaswarehosdio2003Lavarino Dio
 

Similar to Database Programming with TSQL Part 1 (20)

Prak sinyal sistem_1
Prak sinyal sistem_1Prak sinyal sistem_1
Prak sinyal sistem_1
 
pengenalan algoritma komputasi untuk kuliah
pengenalan algoritma komputasi untuk kuliahpengenalan algoritma komputasi untuk kuliah
pengenalan algoritma komputasi untuk kuliah
 
pengenalan algoritma komputasi sains untuk kuliah
pengenalan algoritma komputasi sains untuk kuliahpengenalan algoritma komputasi sains untuk kuliah
pengenalan algoritma komputasi sains untuk kuliah
 
Denormalisasi data1-basisdata
Denormalisasi data1-basisdataDenormalisasi data1-basisdata
Denormalisasi data1-basisdata
 
Laporan hasil praktikum modul i pengenalan pascal
Laporan hasil praktikum modul i pengenalan pascalLaporan hasil praktikum modul i pengenalan pascal
Laporan hasil praktikum modul i pengenalan pascal
 
RPP PLC Elektronika
RPP PLC ElektronikaRPP PLC Elektronika
RPP PLC Elektronika
 
Part 14 store proceduree
Part 14  store procedureePart 14  store proceduree
Part 14 store proceduree
 
Bab 4 evaluasi kinerja
Bab 4   evaluasi kinerjaBab 4   evaluasi kinerja
Bab 4 evaluasi kinerja
 
Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)Pertemuan 09 (procedure dan function database)
Pertemuan 09 (procedure dan function database)
 
Audit Trail Comparison Oracle & PostgreSQL
Audit Trail Comparison Oracle & PostgreSQLAudit Trail Comparison Oracle & PostgreSQL
Audit Trail Comparison Oracle & PostgreSQL
 
Rekayasa web part 4 khaerul anwar
Rekayasa web part 4 khaerul anwarRekayasa web part 4 khaerul anwar
Rekayasa web part 4 khaerul anwar
 
arsitektur sistem operasi modern
arsitektur sistem operasi modernarsitektur sistem operasi modern
arsitektur sistem operasi modern
 
Laporan 4
Laporan 4 Laporan 4
Laporan 4
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
Ragam dialog
Ragam dialogRagam dialog
Ragam dialog
 
Plc dasar
Plc dasarPlc dasar
Plc dasar
 
Pengantar otomatisasi M1.pptx
Pengantar otomatisasi M1.pptxPengantar otomatisasi M1.pptx
Pengantar otomatisasi M1.pptx
 
Laporan 4
Laporan 4 Laporan 4
Laporan 4
 
Struktur database akuntansi
Struktur database akuntansiStruktur database akuntansi
Struktur database akuntansi
 
Tugaswarehosdio2003
Tugaswarehosdio2003Tugaswarehosdio2003
Tugaswarehosdio2003
 

Recently uploaded

SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehSKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehBISMIAULIA
 
415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompokelmalinda2
 
Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiManajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiCristianoRonaldo185977
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxmariaboisala21
 
PPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxPPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxnursariheldaseptiana
 
Metode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau SurveiMetode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau Surveikustiyantidew94
 
kesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxkesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxAhmadSyajili
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxrikosyahputra0173
 
pertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptpertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptAhmadSyajili
 

Recently uploaded (9)

SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS AcehSKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
SKP GURU satuan kinerja pegawai tahun 2023 untuk PNS Aceh
 
415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok415418921-statistika- mean media modus data tunggal dan data kelompok
415418921-statistika- mean media modus data tunggal dan data kelompok
 
Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet RiyadiManajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
Manajemen Lalu Lintas Baru Di Jalan Selamet Riyadi
 
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptxMARIA NOVILIA BOISALA FASILITATOR PMM.pptx
MARIA NOVILIA BOISALA FASILITATOR PMM.pptx
 
PPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptxPPT Olah Nilai Kurikulum merdeka belajar.pptx
PPT Olah Nilai Kurikulum merdeka belajar.pptx
 
Metode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau SurveiMetode penelitian Deskriptif atau Survei
Metode penelitian Deskriptif atau Survei
 
kesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptxkesalahan tipe 1 dan 2 pada statistik.pptx
kesalahan tipe 1 dan 2 pada statistik.pptx
 
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptxMATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
MATERI SESI 2 KONSEP ETIKA KOMUNIKASI.pptx
 
pertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.pptpertemuan-3-distribusi pada-frekuensi.ppt
pertemuan-3-distribusi pada-frekuensi.ppt
 

Database Programming with TSQL Part 1

  • 1. J U R U S A N T E K N O L O G I I N F O R M A S I Advanced Database Course 13. Pemrograman dengan TSQL Bagian-1 Yoppy Yunhasnawa, S.ST., M.Sc.
  • 2. Topics 2 • Konsep Pemrograman • Kontrol Alur Dasar pada T-SQL • Rutin pada T-SQL
  • 3. 04/12/21 3 Topik-1: Konsep Pemrograman Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 4. 1. Konsep Pemrograman • Manakah di bawah ini yang termasuk “Bahasa Pemrograman”? • HTML • XML • CSS • JavaScript • Java • C++ • JSON • SQL • Mengapa suatu bahasa bisa disebut sebagai “Bahasa Pemrograman” dan mengapa yang lainnya tidak? • Kata kuncinya adalah pada ada atau tidaknya fitur “Kontrol Alur” atau “Control of Flow”. • Control of Flow adalah Fitur yang memungkinkan jalannya baris kode tidak monoton lurus dari baris awal ke baris akhir (atas à bawah). • Bisa dibelok-belokkan sesuai keinginan. • Kontrol alur banyak macamnya, tetapi yang paling utama: • Blok • Perulangan • Pencabangan • Rutin (Routine) 04/12/21 Jurusan Teknologi Informasi - Politeknik Negeri Malang 4
  • 5. • Blok • Kelompok baris perintah. • Di bahasa pemrograman yang seperti C biasanya ditandai dengan { dan } • Perulangan • Fitur yang memungkinkan suatu blok yang ditulis 1x, bisa dieksekusi secara berulang-ulang secara otomatis. • Biasanya berupa FOR, DO..WHILE • Pencabangan • Fitur yang memungkinkan blok tertentu dijalankan/tidak dijalankan berdasarkan kondisi tertentu. • Ditandai dengan IF, SWITCH..CASE • Rutin (Routine) • Adalah blok yang memiliki input tertentu dan mengolah input tersebut dengan proses tertentu sehingga menghasilkan sesuatu. • Dibeberapa Bahasa pemrograman biasanya rutin dibedakan menjadi 2: • Prosedur à Tidak memiliki nilai balik (RETURN value). • Fungsi à Memiliki nilai balik. 04/12/21 Jurusan Teknologi Informasi - Politeknik Negeri Malang 5 1. Konsep Pemrograman Kontrol Alur
  • 6. 04/12/21 6 • Sebuah bahasa tanpa keempat kontrol alur tersebut, pada umumnya tidak bisa dikatakan sebagai bahasa pemrograman. • Contoh: HTML, XML, CSS • Lalu bagaimana dengan SQL? • Aslinya, SQL BUKAN sebuah bahasa pemrograman. • Melainkan hanya sebuah bahasa deklaratif yang digunakan untuk memerintah DBMS dalam mengolah data. • Kemudian Microsoft menambahkan elemen-elemen pemrograman bada SQL buatan mereka yaitu Transact SQL. • Sehingga menjadi laris, dan akhirnya diikuti oleh Oracle (PL-SQL), Postgre (PG-SQL), dan akhir-akhir ini (MySQL versi > 8.0) juga menambahkan beberapa fitur pemrograman di dalamnya. • Pada T-SQL: 1. Konsep Pemrograman Pemrograman dengan SQL No. Kontrol Alur Ditandai dengan: 1 Blok BEGIN .. END 2 Perulangan WHILE 3 Pencabangan IF..ELSE 4 Rutin FUNCTION, PROCEDURE Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 7. 04/12/21 7 Topik-2: Kontrol Alur Dasar pada T-SQL Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 8. 04/12/21 8 • Adalah sekumpulan baris perintah. • Pada T-SQL, blok diawali dengan ‘BEGIN’ dan diakhiri dengan ’END’; • Ingat: “GO” bukan blok! 2. Kontrol Alur Dasar pada T-SQL Blok Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 9. 04/12/21 9 • Pada T-SQL, perulangan ditandai dengan kata kunci ’WHILE’ • Jika perintah yang ingin diulang lebih dari satu baris, maka harus diletakkan dalam sebuah blok. • Diawali dengan ‘BEGIN’ dan diakhiri dengan ’END’; 2. Kontrol Alur Dasar pada T-SQL Perulangan Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 10. 04/12/21 10 • Pada T-SQL, pencabangan ditandai dengan kata kunci ’IF..ELSE’. • Juga perlu ‘BEGIN..END’ jika lebih dari 1 baris. 2. Kontrol Alur Dasar pada T-SQL Pencabangan Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 11. 04/12/21 11 Topik-3: Rutin pada T-SQL Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 12. 1. Rutin pada T-SQL • Rutin (Routine) Blok perintah yang memiliki input yang diproses, dan akan menghasilkan sesuatu. • Sesuatu tersebut ada yang: • Berupa nilai (value) yang diteruskan ke baris berikutnya Function. • Berupa perubahan yang bukan berupa nilai Stored Procedure • Pada T-SQL: • Walaupun Procedure tidak memiliki nilai balik, tetapi ia bisa mengubah data. • Functon hanya bisa membaca data saja. • Pada SQL Server, keduanya dapat dijumpai pada folder ‘Programmability’ di Object Explorer. 04/12/21 12 Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 13. 1. Rutin pada T-SQL FUNCTION 04/12/21 13 • Function adalah routine yang mengembalikan nilai. • “Mengembalikan” à Output yang dihasilkan berupa suatu nilai yang bisa dibaca oleh baris kode yang memanggil fungsi tersebut. • Pada SQL Server fungsi ditandai dengan ‘(‘ dan ‘)’. • Jika dilihat dari siapa yang membuat, terdapat 2 jenis fungsi: • Built-in function à Dibuat oleh Microsoft, kita tinggal menggunakan saja. • User-defined function à Kita membuat sendiri. • Untuk membuat function sendiri, digunakan sintaksis: ‘CREATE FUNCTION’. • Agar bisa dijalankan, sintaksis tersebut haruslah berada sendirian dalam sebuah batch. • Diapit oleh dua buah ‘GO’. Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 14. 1. Rutin pada T-SQL FUNCTION: Cara Membuat 04/12/21 14 • Contoh: Membuat fungsi untuk menentukan harga produk ‘MAHAL’ atau ‘MURAH’ berdasarkan perbandingan dengan rata-rata harga semua produk yang ada. Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 15. 1. Rutin pada T-SQL FUNCTION: Cara Memanggil • Untuk memanggil function kita harus menggunakan keyword SELECT. • Apabila tidak diberi alias, maka kolom yang dihasilkan tidak akan ada namanya. 04/12/21 15 Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 16. 1. Rutin pada T-SQL PROCEDURE 04/12/21 16 • Function adalah routine yang tidak bisa mengubah data. • Apabila ingin membuat sebuah rutin yang bisa mengubah data, maka kita harus membuat sebuah STORED PROCEDURE. • Stored procedure tidak memiliki RETURN VALUE, tetapi pada pendefinisiannya, ia bisa ditambahkan statement-statement DML. • Apabila sangat terpaksa, STORED PROCEDURE dapat diakali agar ia seolah-olah memiliki return value. • Dengan menambahkan keyword OUTPUT pada saat membuatnya. Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 17. 1. Rutin pada T-SQL PROCEDURE: Membuat dan memanggil 04/12/21 17 • Untuk memanggil, digunakan keyword EXEC atau EXECUTE. • Nama parameternya ditulis, tidak menggunakan kurung buka dan tutup. • Contoh: Membuat procedure untuk memeriksa apakah kolom ‘shipregion’ bernilai NULL, jika NULL, maka akan diganti nilainya dengan string ‘Not Available’. Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 18. Pertanyaan? 04/12/21 18 Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 19. 04/12/21 19 Jurusan Teknologi Informasi - Politeknik Negeri Malang
  • 20. Tugas • Buatlah sebuah fungsi yang menampilkan: • ‘SD’ apabila pada parameternya dimasukkan angka 1-6 • ‘SMP’ apabila dimasukkan angka 7-9 • ‘SMA’ apabila 10-12. • Buatlah sebuah stored procedure yang apabila dijalankan akan menyalin seluruh struktur maupun isi dari tabel HR.Employees ke sebuah tabel baru dengan nama HR.Employees_Backup. • Kumpulkan bersama dengan SQL yang sudah Anda buat hari ini ke Google Classroom. 04/12/21 20 Jurusan Teknologi Informasi - Politeknik Negeri Malang