Menu
Pasang iklan SEO disini Murah, 25000 setahun dan dapatkan Trafik setiap harinya

Membuat Program Basis Data Berbasis Microsoft (SQL SERVER) TIK.PR08.006.01

May
18
2015
by : Bupeko. Posted in : blog

 

MATERI PELATIHAN BERBASIS KOMPETENSI

SEKTOR TELEMATIKA

SUB SEKTOR PROGRAMMER KOMPUTER

 

 

MEMBUAT PROGRAM

BASIS DATA BERBASIS

MICROSOFT (SQL SERVER)

TIK.PR08.006.01

 

 

 

 

 

 

 

 

BUKU INFORMASI

 

 

 

 

 

 

 

 

 

 

DEPARTEMEN TENAGA KERJA DAN TRANSMIGRASI R.I.

DIREKTORAT JENDERAL PEMBINAAN PELATIHAN DAN PRODUKTIVITAS

Jl. Jend. Gatot Subroto Kav.51 Lt.7.B Jakarta Selatan

 

 

DAFTAR ISI

 

 

Daftar Isi …………………………………………………………………………………………… 1

 

BAB I       PENGANTAR ……………………………………………………………………………    4

1.1   Konsep Dasar Pelatihan Berbasis Kompetensi …………………………..       4

1.2   Penjelasan Modul ………………………………………………………………      4

1.2.1  Isi Modul ………………………………………………………………..      4

1.2.2  Pelaksanaan Modul ……………………………………………………      5

1.3   Pengakuan Kompetensi Terkini (RCC) …………………………………….       6

1.4   Pengertian Istilah-Istilah ……………………………………………………..     7

 

BAB II     STANDAR KOMPETENSI ……………………………………………………………. 9

2.1   Peta Paket Pelatihan …………………………………………………………. 9

2.2   Pengertian Unit Standar …………………………………………………….. 9

2.3   Unit Kompetensi Yang Dipelajari ………………………………………… 10

2.3.1   Judul Unit ……………………………………………………………. 10

2.3.2   Kode Unit ……………………………………………………………..       10

2.3.3   Deskripsi Unit ………………………………………………………..       10

2.3.4   Elemen Kompetensi ……………………………………………….. 10

2.3.5   Batasan Variabel ……………………………………………………. 11

2.3.6   Panduan Penilaian …………………………………………………. 12

2.3.7   Kompetensi Kunci ………………………………………………….. 13

 

BAB III    STRATEGI DAN METODE PELATIHAN …………………………………………         14

3.1   Strategi Pelatihan ……………………………………………………………        14

3.2   Metode Pelatihan …………………………………………………………….        15

 

BAB IV     MATERI UNIT KOMPETENSI …………………………………………………….         16

4.1   Tujuan Instruksional Umum ……………………………………………….         16

4.2   Tujuan Instruksional Khusus ………………………………………………         16

4.3   Memulai SQL Server …………………………………………………………        16

4.3.1  Mengenal SQL Server ………………………………………………         17

4.3.2  Instalasi SQL Server ………………………………………………..        17

4.3.2.1  Instalasi Server …………………………………………..         17

4.3.2.2  Instalasi Client ……………………………………………        23

4.4   Basis Data SQL Server ………………………………………………………        23

4.4.1  Komponen Basis Data SQL Server ………………………………         23

4.4.2  Tipe Data SQL Server ………………………………………………        24

4.5   Apa itu Transact-SQL? ………………………………………………………        29

4.5.1  Ekspresi dan Variabel ………………………………………………        30

4.5.2  Fungsi-Fungsi ………………………………………………………..        32

4.5.3  Statement …………………………………………………………….        38

4.5.3.1  Flow Statement …………………………………………..        38

4.5.3.2  Query Statement …………………………………………         40

4.5.4  Fungsi Agregat ………………………………………………………        43

4.5.5  Union dan Join ……………………………………………………….       44

4.6   Membuat Basis Data ………………………………………………………..         49

4.6.1  Menggunakan T-SQL dan Enterprise Manager ………………. 49

4.6.2  Membuat dan menjalankan Query ………………………………          57

4.7   Stored Procedure dan Trigger …………………………………………….        60

4.7.1  Membuat Stored Procedure ………………………………………         60

4.7.2  Membuat Trigger ……………………………………………………         63

4.8   Administrasi SQL Server ……………………………………………………        66

4.8.1  Sistem Keamanan Pada SQL Server …………………………… 66

4.8.1.1  NT Integrated Security …………………………………         67

4.8.1.2  Keamanan SQL Server 2000 …………………………..         67

4.8.1.3  Hak Akses Pengguna ……………………………………         71

4.8.1.4  Server dan Database Roles ……………………………          74

4.8.2  SQL Server Agent …………………………………………………..         75

4.8.3  Data Transformation Service ……………………………………..        78

4.8.3.1  DTS Package Editor ……………………………………..         78

4.8.3.2  Import Wizard ……………………………………………         79

4.8.3.3  Export Wizard …………………………………………….        88

4.9   Integrasi XML dengan SQL Server ……………………………………….         92

BAB V      SUMBER-SUMBER YANG DIPERLUKAN UNTUK PENCAPAIAN

KOMPETENSI ……………………………………………………………………… 105

5.1   Sumber Daya Manusia …………………………………………………… 105

5.2   Literatur …………………………………………………………………….. 106

5.3   Daftar Peralatan dan Bahan yang diperlukan ………………………. 106

 

DAFTAR PUSTAKA

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

BAB I

PENGANTAR

 

 

1.1.      Konsep Dasar Pelatihan Berbasis Kompetensi

 

  • Apakah pelatihan berdasarkan kompetensi?

Pelatihan berdasarkan kompetensi adalah pelatihan yang memperhatikan pengetahuan, keterampilan dan sikap yang diperlukan di tempat kerja agar dapat melakukan pekerjaan dengan kompeten. Standar Kompetensi dijelaskan oleh Kriteria Unjuk Kerja.

  • Apakah artinya menjadi kompeten ditempat kerja?

Jika Anda kompeten dalam pekerjaan tertentu, Anda memiliki seluruh keterampilan, pengetahuan dan sikap yang perlu untuk ditampilkan secara efektif ditempat kerja, sesuai dengan standar yang telah disetujui.

 

1.2    Penjelasan Modul

 

Modul ini dirancang untuk dapat digunakan pada Pelatihan Klasikal dan Pelatihan Individual/mandiri :

  • Pelatihan klasikal adalah pelatihan yang disampaiakan oleh seorang pelatih.
  • Pelatihan individual/mandiri adalah pelatihan yang dilaksanakan oleh peserta dengan menambahkan unsur-unsur/sumber-sumber yang diperlukan dengan bantuan dari pelatih.

 

1.2.1  Isi Modul

a.  Buku Informasi

Buku informasi ini adalah sumber pelatihan untuk pelatih maupun peserta pelatihan.

 

b.  Buku Kerja

Buku kerja ini harus digunakan oleh peserta pelatihan untuk mencatat setiap pertanyaan dan kegiatan praktik baik dalam Pelatihan Klasikal maupun Pelatihan Individual / mandiri.

Buku ini diberikan kepada peserta pelatihan dan berisi :

  • Kegiatan-kegiatan yang akan membantu peserta pelatihan untuk mempelajari dan memahami informasi.
  • Kegiatan pemeriksaan yang digunakan untuk memonitor pencapaian keterampilan peserta pelatihan.
  • Kegiatan penilaian untuk menilai kemampuan peserta pelatihan dalam melaksanakan praktik kerja.

c.  Buku Penilaian

Buku penilaian ini digunakan oleh pelatih untuk menilai jawaban dan tanggapan peserta pelatihan pada Buku Kerja dan berisi :

  • Kegiatan-kegiatan yang dilakukan oleh peserta pelatihan sebagai pernyataan keterampilan.
  • Metode-metode yang disarankan dalam proses penilaian keterampilan peserta pelatihan.
  • Sumber-sumber yang digunakan oleh peserta pelatihan untuk mencapai keterampilan.
  • Semua jawaban pada setiap pertanyaan yang diisikan pada Buku Kerja.
  • Petunjuk bagi pelatih untuk menilai setiap kegiatan praktik.
  • Catatan pencapaian keterampilan peserta pelatihan.

 

1.2.2  Pelaksanaan Modul

 

Pada pelatihan klasikal, pelatih akan :

  • Menyediakan Buku Informasi yang dapat digunakan peserta pelatihan sebagai sumber pelatihan.

 

  • Menyediakan salinan Buku Kerja kepada setiap peserta pelatihan.
  • Menggunakan Buku Informasi sebagai sumber utama dalam penyelenggaraan pelatihan.
  • Memastikan setiap peserta pelatihan memberikan jawaban / tanggapan dan menuliskan hasil tugas praktiknya pada Buku Kerja.

 

Pada Pelatihan individual / mandiri, peserta pelatihan akan :

  • Menggunakan Buku Informasi sebagai sumber utama pelatihan.
  • Menyelesaikan setiap kegiatan yang terdapat pada buku Kerja.
  • Memberikan jawaban pada Buku Kerja.
  • Mengisikan hasil tugas praktik pada Buku Kerja.
  • Memiliki tanggapan-tanggapan dan hasil penilaian oleh pelatih.

 

1.3        Pengakuan Kompetensi Terkini (RCC)

 

  • Apakah Pengakuan Kompetensi Terkini (Recognition of Current Competency).

Jika Anda telah memiliki pengetahuan dan keterampilan yang diperlukan untuk elemen unit kompetensi tertentu, Anda dapat mengajukan pengakuan kompetensi terkini (RCC). Berarti Anda tidak akan dipersyaratkan untuk belajar kembali.

  • Anda mungkin sudah memiliki pengetahuan dan keterampilan, karena Anda telah :
  1. Bekerja dalam suatu pekerjaan yang memerlukan suatu pengetahuan dan keterampilan yang sama atau
  2. Berpartisipasi dalam pelatihan yang mempelajari kompetensi yang sama atau
  3. Mempunyai pengalaman lainnya yang mengajarkan pengetahuan dan keterampilan yang sama.

 

 

1.4        Pengertian-pengertian Istilah

 

Profesi

Profesi adalah suatu bidang pekerjaan yang menuntut sikap, pengetahuan serta keterampilan/keahlian kerja tertentu yang diperoleh dari proses pendidikan, pelatihan serta pengalaman kerja atau penguasaan sekumpulan kompetensi tertentu yang dituntut oleh suatu pekerjaan/jabatan.

 

Standardisasi

Standardisasi adalah proses merumuskan, menetapkan serta menerapkan suatu standar tertentu.

 

Penilaian / Uji Kompetensi

Penilaian atau Uji Kompetensi adalah proses pengumpulan bukti melalui perencanaan, pelaksanaan dan peninjauan ulang (review) penilaian serta keputusan mengenai apakah kompetensi sudah tercapai dengan membandingkan bukti-bukti yang dikumpulkan terhadap standar yang dipersyaratkan.

 

Pelatihan

Pelatihan adalah proses pembelajaran yang dilaksanakan untuk mencapai suatu kompetensi tertentu dimana materi, metode dan fasilitas pelatihan serta lingkungan belajar yang ada terfokus kepada pencapaian unjuk kerja pada kompetensi yang dipelajari.

 

Kompetensi

Kompetensi adalah kemampuan seseorang untuk menunjukkan aspek sikap, pengetahuan dan keterampilan serta penerapan dari ketiga aspek tersebut ditempat kerja untuk mencapai unjuk kerja yang ditetapkan.

 

 

Standar Kompetensi

Standar kompetensi adalah standar yang ditampilkan dalam istilah-istilah hasil serta memiliki format standar yang terdiri dari judul unit, deskripsi unit, elemen kompetensi, kriteria unjuk kerja, ruang lingkup serta pedoman bukti.

 

Sertifikat Kompetensi

Adalah pengakuan tertulis atas penguasaan suatu kompetensi tertentu kepada seseorang yang dinyatakan kompeten yang diberikan oleh Lembaga Sertifikasi Profesi.

 

Sertifikasi Kompetensi

Adalah proses penerbitan sertifikat kompetensi melalui proses penilaian / uji kompetensi.

 

 

BAB II

STANDAR KOMPETENSI

 

 

2.1.      Peta Paket Pelatihan

 

Modul yang sedang Anda pelajari ini adalah untuk mencapai satu unit kompetensi, yang termasuk dalam satu paket pelatihan, yang terdiri atas unit-unit kompetensi berikut:

 

2.1.1 TIK.PR08.006.01            Membuat Program Basis Data Berbasis Microsoft (SQL Server)

 

2.2.      Pengertian Unit Standar Kompetensi

 

Apakah Standar Kompetensi? Setiap Standar Kompetensi menentukan :

  1. Pengetahuan dan keterampilan yang diperlukan untuk mencapai kompetensi.
  2. Standar yang diperlukan untuk mendemonstrasikan kompetensi.
  3. Kondisi dimana kompetensi dicapai.

Di dalam unit kompetensi ini, Anda akan mempelajari bagaimana membuat basis data dengan menggunakan aplikasi Microsoft SQL Server.

 

Sistem pelatihan berbasis kompetensi terfokus pada pencapaian kompetensi, bukan pada lamanya waktu. Namun diharapkan pelatihan ini dapat dilaksanakan dan dicapai dalam jangka waktu tidak lebih dari seminggu, tiga sampai lima hari. Pelatihan ini diperuntukkan bagi semua pengguna terutama yang tugasnya berkaitan dengan pengelolaan, pemeliharaan dan pemrograman basis data seperti Database Administrator dan Database Developer.

 

Jika Anda belum mencapai kompetensi pada usaha/kesempatan pertama, Pelatih Anda akan mengatur rencana pelatihan dengan Anda. Rencana ini akan memberikan Anda kesempatan kembali untuk meningkatkan level kompetensi Anda sesuai dengan level yang diperlukan. Jumlah maksimum usaha/kesempatan yang disarankan adalah 3 (tiga) kali.

 

2.3.      Unit Kompetensi yang Dipelajari

 

Dalam sistem pelatihan, Standar Kompetensi diharapkan menjadi panduan bagi peserta pelatihan  untuk dapat :

  • mengidentifikasikan apa yang harus dikerjakan peserta pelatihan.
  • memeriksa kemajuan peserta pelatihan.
    • menyakinkan bahwa semua elemen (sub-kompetensi) dan kriteria unjuk   kerja telah dimasukkan dalam pelatihan dan penilaian.

 

2.3.1 JUDUL UNIT            :      Membuat Program Basis Data Berbasis Microsoft (SQL Server)

 

2.3.2 KODE UNIT             :     TIK.PR08.006.01

 

2.3.3 DESKRIPSI UNIT    :     Unit ini menentukan kompetensi yang diperlukan untuk pemrograman basis data berbasis TSQL untuk Microsoft SQL Server.

 

2.3.4  ELEMEN KOMPETENSI

 

ELEMEN KOMPETENSI

KRITERIA UNJUK KERJA

01    Menggunakan TSQL 1.1      Alat-alat programming untuk SQL Server yang digunakan.

1.2      Sintaks TSQL digunakan.

1.3      Perintah TSQL dijalankan.

 

02   Menggunakan stored procedures 2.1       Stored procedures dimanipulasi (dibuat, dimodifikasi dan dihapus).

2.2       Programming stored procedures dibuat.

 

03    Menggunakan triggers 3.1       Triggers dibuat dan dikelola.

3.2       Programming triggers dibuat.

 

04    Menerapkan administrasi SQL Server 4.1       Sistem keamanan untuk SQL Server dibuat dan dirancang.

4.2       Keamanan SQL Server diimplementasikan dan diadministrasikan.

4.3       Konsep SQL Server agent dijelaskan.

4.4       Konsep DTS (Data Transformation Service) dijelaskan.

 

05    Menerapkan XML Support 5.1       Integrasi dari sistem dan transfer data dengan penggunaan XML dilakukan.

 

 

2.3.5  Batasan Variabel

 

Batasan variabel unit kompetensi ini adalah sebagai berikut:

  1. Unit ini berlaku untuk seluruh sektor TeknoLogi Informasi dan Komunikasi.
  2. Membuat Program Basis Data Berbasis Microsoft SQL Server bersifat internal pada bidang teknoLogi informasi dan komunikasi.

 

 

2.3.6  Panduan Penilaian

Panduan penilaian terdiri dari :

1.   Pengetahuan dan Ketrampilan Penunjang

Untuk mendemonstrasikan kompetensi, diperlukan bukti keterampilan dan pengetahuan di bidang berikut ini  :

1.1     Pengetahuan dasar

1.1.1  Konfigurasi umum perangkat komputer dan peripheral input/output standar (monitor, keyboard, mouse).

1.1.2  Sistem basis data.

1.1.3  Sistem informasi manajemen.

1.1.4  Pemrograman data deskripsi (SQL).

 

2.   Konteks Penilaian :

Kompetensi harus diujikan di tempat kerja atau di tempat lain secara praktek dengan kondisi kerja sesuai dengan keadaan normal.

 

3.   Aspek Penting Penilaian :

Aspek yang harus diperhatikan :

3.1     Kemampuan membuat Query menggunakan sintaks TSQL yang ada.

3.2     Kemampuan menggunakan stored procedures dan memanipulasinya.

3.3     Kemampuan membuat triggers.

3.4     Kemampuan mengelola manajemen SQL Server.

3.5     Menjelaskan pengimplementasian XML dalam basis data.

 

4.   Kaitan Dengan Unit-Unit Lain :

4.1     Unit ini mendukung di dalam membuat progam untuk mengakses basis data. Contoh mencakup namun tidak terbatas pada  :

 

4.1.1    TIK.PR02.002.01 Membuat algoritma pemrograman lanjut.

4.1.2    TIK.PR02.003.01 Membuat struktur data.

4.1.3    TIK.PR02.008.01 Mengoperasikan pemrograman terstruktur.

4.1.4    TIK.PR02.020.01 Mengoperasikan aplikasi basis data.

 

4.2     Pengembangan pelatihan untuk memenuhi persyaratan dalam unit ini perlu dilakukan dengan hati-hati. Untuk pelatihan pra kejuruan umum, institusi harus menyediakan pelatihan yang mempertimbangkan serangkaian konteks industri seutuhnya tanpa bias terhadap sektor tertentu. Batasan variabel akan membantu dalam hal ini. Untuk sektor tertentu/khusus, pelatihan harus disesuaikan untuk memenuhi kebutuhan sektor tersebut.

 

2.3.7  Kompetensi Kunci

No

Kompetensi Kunci Dalam Unit ini

Tingkat

1

Mengumpulkan, mengorganisir dan menganalisa informasi

3

2

Mengkomunikasikan ide-ide dan informasi

3

3

Merencanakan dan mengorganisir aktivitas-aktivitas

3

4

Bekerja dengan orang lain dan kelompok

2

5

Menggunakan ide-ide dan teknik matematika

3

6

Memecahkan masalah

3

7

Menggunakan teknoLogi

3

 

 

 

 

 

BAB III

STRATEGI DAN METODE PELATIHAN

 

3.1.      Strategi Pelatihan        

 

Belajar dalam suatu sistem Berdasarkan Kompetensi berbeda dengan yang sedang “diajarkan” di kelas oleh Pelatih. Pada sistem ini Anda akan bertanggung jawab terhadap belajar Anda sendiri, artinya bahwa Anda perlu merencanakan belajar Anda dengan Pelatih dan kemudian melaksanakannya dengan tekun sesuai dengan rencana yang telah dibuat.

 

Persiapan/perencanaan

  1. Membaca bahan/materi yang telah diidentifikasi dalam setiap tahap belajar dengan tujuan mendapatkan tinjauan umum mengenai isi proses belajar Anda.
  2. Membuat catatan terhadap apa yang telah dibaca.
  3. Memikirkan bagaimana pengetahuan baru yang diperoleh berhubungan dengan pengetahuan dan pengalaman yang telah Anda miliki.
  4. Merencanakan aplikasi praktik pengetahuan dan keterampilan Anda.

 

Permulaan dari proses pembelajaran

  1. Mencoba mengerjakan seluruh pertanyaan dan tugas praktik yang terdapat pada tahap belajar.
  2. Merevisi dan meninjau materi belajar agar dapat menggabungkan pengetahuan Anda.

 

Pengamatan terhadap tugas praktik

  1. Mengamati keterampilan praktik yang didemonstrasikan oleh Pelatih atau orang yang telah berpengalaman lainnya.
  2. Mengajukan pertanyaan kepada Pelatih tentang konsep sulit yang Anda temukan.

 

Implementasi

  1. Menerapkan pelatihan kerja yang aman.
  2. Mengamati indikator kemajuan personal melalui kegiatan praktik.
  3. Mempraktikkan keterampilan baru yang telah Anda peroleh.

 

Penilaian

Melaksanakan tugas penilaian untuk penyelesaian belajar Anda.

 

3.2.          Metode Pelatihan

      

Terdapat tiga prinsip metode belajar yang dapat digunakan. Dalam beberapa kasus, kombinasi metode belajar mungkin dapat digunakan.

 

Belajar secara mandiri

Belajar secara mandiri membolehkan Anda untuk belajar secara individual, sesuai dengan kecepatan belajarnya masing-masing. Meskipun proses belajar dilaksanakan secara bebas, Anda disarankan untuk menemui Pelatih setiap saat untuk mengkonfirmasikan kemajuan dan mengatasi kesulitan belajar.

 

Belajar Berkelompok

Belajar berkelompok memungkinkan peserta untuk dating bersama secara teratur dan berpartisipasi dalam sesi belajar berkelompok. Walaupun proses belajar memiliki prinsip sesuai dengan kecepatan belajar masing-masing, sesi kelompok memberikan interaksi antar peserta, Pelatih dan pakar/ahli dari tempat kerja.

 

Belajar terstruktur

Belajar terstruktur meliputi sesi pertemuan kelas secara formal yang dilaksanakan oleh Pelatih atau ahli lainnya. Sesi belajar ini umumnya mencakup topik tertentu.

 

BAB IV

Materi Unit Kompetensi

 

 

4.1        Tujuan Instruksional Umum

Berikut adalah tujuan instruksional umum untuk topik ini:

  • Siswa mengenal dan mampu mengoperasikan aplikasi Microsoft SQL Server
  • Siswa mampu membuat program basis data dengan Microsoft SQL Server
  • Siswa dapat mengelola aplikasi basis data berbasis Microsoft SQL Server

 

4.2        Tujuan Instruksional Khusus

Berikut adalah tujuan instruksional khusus untuk topik ini:

  • Siswa memahami dan mampu menjelaskan bagaimana proses pembuatan basis data dengan Microsoft SQL Server
  • Siswa memahami bahasa Transact-SQL (T-SQL)
  • Siswa dapat membuat dan menjalankan Query dengan T-SQL
  • Siswa dapat membuat dan menjalankan store-procedure dengan T-SQL
  • Siswa dapat membuat dan menjalankan trigger dengan T-SQL
  • Siswa mengerti pengelolaan data dengan Microsoft SQL Server
  • Siswa mampu mengerti administrasi Microsoft SQL Server mencakup masalah keamanan dan transformasi data
  • Siswa dapat mengimplementasikan XML dalam basis data

 

4.3        Memulai SQL Server

Sebelum memulai topik ini, Anda dianggap telah menguasai dasar-dasar pemrograman SQL, mengenal dengan baik perintah-perintah baik DDL maupun DML. Karena pada modul ini kita hanya akan membahas tentang Microsoft SQL Server, khususnya SQL Server 2000.

 

4.3.1      Mengenal SQL Server

SQL Server merupakan sistem managemen basis data relasional yang umumnya dikenal sebagai Relational Database Management System (RDBMS) yaitu suatu sistem basis data yang menyediakan integrasi data yang baik dimana data-data yang ada tersimpan dalam tabel-tabel yang berhubungan satu dengan lainnya. RDBMS juga mendukung jumlah pengguna yang lebih besar.

SQL Server menangani pengolahan basis data relasional antara klien dengan server menggunakan Transact-SQL. Proses pengolahan basis data juga dapat menggunakan alat-alat bantu managemen yang telah disediakan oleh SQL Server sendiri. Misalnya SQL Enterprise Manager, SQL Query Analyzer, dan sebagainya.

Klien adalah suatu obyek dalam bentuk aplikasi atau program dengan antarmuka yang berfungsi untuk berkomunikasi dan mengakses data dari server. Sedangkan Server merupakan obyek berupa aplikasi yang menyediakan layanan terhadap data yang ada untuk klien-klien. Layanan yang disediakan dapat berupa analisa, pencarian dan pembaharuan data.

 

4.3.2      Instalasi SQL Server

Pada topik ini kita akan menggunakan Microsoft SQL Server 2000. Instalasi SQL Server dibedakan menjadi dua yaitu Instalasi Server dan Instalasi Client.

 

4.3.2.1    Instalasi Server

Proses instalasi server dapat dilakukan secara local atau remote.

  1. Instalasi secara local
    1. Proses instalasi dimulai dengan memilih SQL Server 2000 Components.

 

 

 

Gambar 4.1 SQL Server 2000 Setup

 

  1. Kemudian pilihlah Install Database Server.
  2. Anda akan melihat kotak diaLog SQL Server 2000 Installation Wizard. Tekan tombol Next untuk melanjutkan.
  3. Pilihlah Local Computer dan tekan tombol Next.
  4. Klik Create A New Instance Of SQL Server dan tekan tombol Next.
  5. Masukkan nama dan perusahaan pada window User Information dan tekan tombol Next.
  6. Klik yes untuk menyetujui license agreement SQL Server

 

Gambar 4.2 Install Component

  1. Masukkan 25 karakter CD Key dan tekan tombol Next.
  2. Pilihlah Server And Client Tools pada window berikutnya.
  3. Anda kemudian akan melihat diaLog Instance Name. Jika Anda ingin mengubah nama instance SQL Server, hilangkan tanda centang pada pilihan Default dan masukkan nama yang anda inginkan. Tekan Next.
  4. Pilihlah tipe setup apakah Typical, Minimum, atau Custom. Instalasi dengan tipe Typical meliputi semua pilihan fitur kecuali pilihan Development Tools dan Full-Text Search. Instalasi Custom mengizinkan Anda untuk

 

menentukan sendiri pilihan fitur yang ingin diinstall. Sedangkan instalasi Minimum sifatnya ekuivalen dengan tipe Typical, hanya saja tidak memiliki Upgrade Tools, Books Online, dan Management Tools.

Gambar 4.3 Tipe Setup

  1. DiaLog Services Accounts akan muncul setelah Anda menekan tombol Next. Pilih ‘Use the same account for each service …’ jika Anda menggunakan account yang sama atau ada auto-start pada setiap service. Pilihan Local System account, menggunakan account pada sistem operasi lokal dan pilihan Domain User account menggunakan account pada domain jaringan yang bersangkutan. Lihat gambar 4.4.
  2. Berikutnya anda harus menentukan mode otentikasi. Anda dapat memilih Windows Authentication Mode untuk proses otentikasi menggunakan account Windows atau Mixed Mode untuk gabungan antara otentikasi

 

dengan account Windows dan account SQL Server. Jika Anda memilih Mixed Mode, maka jangan lupa memasukkan password untuk sa (system administrator)

Gambar 4.4 Services Accounts

Gambar 4.5 DiaLog Pilihan Otentikasi

  1. Ikuti saja petunjuk setup berikutnya. Lama instalasi tergantung pada kecepatan sistem Anda.
  2. Instalasi secara remote
    1. Lakukan langkah a, b, c pada instalasi local.
    2. Pada diaLog Computer Name pilih Remote Computer dan ketikkan nama komputer pada sistem remote. Tekan Next untuk melanjutkan.
    3. Lakukan langkah e, f, g, h pada instalasi local.
    4. Lalu Anda akan menjumpai diaLog Remote Setup Information seperti gambar 4.6.

Gambar 4.6 DiaLog Remote Setup Information

 

  1. Masukkan nama user, password dan domain untuk komputer dimana Anda ingin melakukan instalasi. Pastikan account yang Anda gunakan memiliki kewenangan untuk melakukan instalasi aplikasi pada komputer yang bersangkutan. Masukkan pula Target Path dalam format Universal Naming Convention (UNC),

 

misalnya, \\remoteserver\c$\Program Files\Microsoft SQL Server. Tekan Next untuk melanjutkan.

  1. Pilihlah Server And Client Tools pada diaLog Installation Definition.
  2. Langkah selanjutnya sama dengan langkah instalasi dari local.
  3. Ketika proses instalasi SQL Server berhasil melakukan koneksi ke komputer remote, maka proses instalasi akan berlangsung seperti instalasi local.

 

4.3.2.2    Instalasi Client

 

Proses instalasi client sama mudahnya dengan instalasi server.

  1. Lakukan langkah a s/d h pada instalasi server dari local.
  2. Pilih Client Tools Only pada diaLog Installation Definition dan tekan Next untuk melanjutkan.
  3. Anda kemudian akan menjumpai diaLog Select Components, Pilihlah pilihan yang Anda inginkan dan tekan tombol Next untuk melanjutkan. Management Tools, Client Connectivity, Books Online, dan Development Tools merupakan pilihan default dari SQL Server.
  4. Tekan tombol Next pada diaLog Start Copying Files dan proses instalasi akan berlangsung hingga selesai.

 

4.4        Basis Data SQL Server

 

Basis data (Database) merupakan sekumpulan obyek berupa tabel dan obyek lainnya yang berfungsi menangani data-data di dalam tabel-tabel pada basis data tersebut.

 

 

4.4.1      Komponen Basis Data SQL Server

Basis data SQL Server disusun oleh beberapa komponen antara lain sebagai berikut:

  1. 1.     Physical Database

Merupakan kumpulan File-File fisik yang membentuk sebuah basis data. Physical database memiliki 2 atau lebih physical operating system File. Dalam kondisi minimal, 1 File akan menyimpan informasi mengenai basis data dan File lainnya menyimpan catatan transaksi basis data (database transaction Log, ukurannya defaultnya 25% adalah dari File data) yang berperan. Ketika ada perubahan isi basis data, maka semua perubahan dicatat ke dalam transaction Log terlebih dahulu.

  1. 2.     Logical Database

Merupakan bagian dari basis data yang terlihat oleh pengguna meliputi obyek tabel, view, dan sebagainya.

  1. System Database

SQL Server memiliki basis data khusus yang digunakan untuk mencatat dan menjaga kondisi dari sistem SQL Server itu sendiri. Basis data ini dibuat ketika proses instalasi pertama kali. Basis data sistem ini antara lain:

  1. a.      Master

Basis data ini terdiri dari tabel-tabel sistem yang mencatat keseimbangan sistem SQL Server secara keseluruhan.

Misalnya ketika kita membuat basis data baru pada server, maka proses itu akan dimasukkan ke dalam tabel sysDatabase pada basis data Master. Basis data ini sangat kritikal untuk sistem dan tidak boleh dihapus

  1. b.     Model

Basis data ini menyediakan bentuk dasar dari sebuah basis data yang dapat diduplikasi. Dengan kata lain basis data ini berperan sebagai template bagi setiap basis data baru yang kita buat.

  1. Msdb

Basis data ini digunakan SQL Server untuk menyimpan instruksi-instruksi sistem yang dihasilkan oleh proses SQL Agent, misalnya penjadwalan proses backup pada basis data, pencatatan history, dan sebagainya. Bila basis data ini dihapus maka proses penjadwalan, history, SQL Agent akan hilang dari SQL Server.

  1. Tempdb

Basis data ini digunakan sebagai tempat penyimpanan sementara ketika Server bekerja. Basis data ini dibuat dari awal setiap kali SQL Server dijalankan. Ketika kita melakukan Query yang sangat kompleks dimana dibutuhkan tabel tambahan atau tabel sementara, maka itu dilakukan pada basis data ini.

  1. e.      User Database

Merupakan basis data yang dibuat oleh pengguna. Pada SQL Server 2000, disediakan 2 buah basis data contoh yang diberi nama pubs dan northwind untuk latihan dan eksperimen.

 

Basis data (Database) SQL Server tersusun dari beberapa sistem File. File-File ini terbagi menjadi tiga, yaitu:

  1. Primary Data Files

Setiap basis data SQL Server harus memiliki minimal 1 File ini untuk menyimpan obyek-obyek basis data berupa tabel atau indeks. File ini berekstensi .mdf.

  1. Secondary Data Files

Basis data akan membuat sebuah File data sekunder bila File data primer tidak sanggup menampung data-data yang ada. File ini berekstensi .ndf.

 

  1. Log Files

Setiap basis data memiliki File Log untuk mencatat seluruh informasi yang ada sebelum informasi tersebut ditulis ke dalam File primer atau sekunder. File ini dapat digunakan untuk memulihkan kembali kondisi basis data bila mengalami kerusakan. Ekstensi dari File ini adalah .ldf.

           

Obyek-obyek yang terdapat dalam basis data (Database) SQL Server antara lain sebagai berikut:

  1. Tabel
  2. Indeks
  3. 3.     View
  4. 4.     Rules, Default, Constraint
  5. 5.     Stored-Procedured
  6. 6.     Trigger
  7. 7.     User-Defined Data Types

 

4.4.2      Tipe Data SQL Server

 

Selain obyek, SQL Server juga memiliki tipe datanya sendiri. Tipe data ini digunakan untuk mendefinisikan ukuran-ukuran data di dalam tabel atau variabel dalam pemrograman SQL. SQL server juga memiliki tipe data yang disebut NULL. Tipe data ini hanya digunakan ketika Anda tidak ingin mendefinisikan suatu nilai pada suatu data.

 

Tipe Data

Penjelasan

Ukuran

bigint Integer (bilangan bulat) 8-byte. 8 bytes
binary[(n)] Data biner dengan ukuran n bytes, dimana n bernilai dari 1 s/d 8000. Digunakan jika entri data pada kolom diperkirakan memiliki ukuran yang sama atau berdekatan. n + 4 bytes
bit Tipe data integer yang hanya dapat bernilai 1, 0, atau NULL. Kolom dengan tipe data ini tidak dapat memiliki indeks. 1 byte untuk kolom 8-bit, 2 bytes untuk kolom 9-16 bit, dst…
char[(n)] Data non-Unicode dengan jumlah n karakter, dimana n bernilai dari 1 s/d 8000. n bytes
cursor Referensi pada cursor. Hanya dapat digunakan sebagai variabel dan parameter pada stored procedure. -
datetime Data tanggal dan waktu dari 1 Januari 1753 s/d 31 Desember 9999, dengan akurasi 3.33 mili-detik 8 bytes
decimal[(p,[s])] atau numeric[(p,[s])] Bilangan dengan skala dan presisi yang ditentukan. (tipe data numeric bersinonim dengan decimal.) Presisi (p) menentukan jumlah digit yang dapat disimpan, baik kiri maupun kanan koma. Skala (s) menentukan jumlah digit maksimum yang dapat ditampung di belakang koma. Skala harus lebih kecil atau sama dengan presisi. Presisi minimum adalah 1 dan maksimum 28 kecuali SQL Server dijalankan dengan parameter -p, jika demikian, presisi dapat mencapai 38 digit. 5 – 17 bytes, tergantung pada presisi
float[(n)] Data numerik dari -1.79E +308 s/d 1.79E +308. Nilai n berkisar antara 1 sampai 53. 4 – 8 bytes, tergantung pada presisi
image Digunakan untuk data biner dengan ukuran lebih dari 8000 bytes, maksimum 2^31 – 1 bytes. 16 bytes
integer or int Data Integer (bilangan bulat) dari -2^31 (-2,147,483,648) s/d 2^31 – 1 (2,147,483,647) 4 bytes
money Data dengan nilai uang dari -2^63 (-922,337,203,685,477.5808) s/d 2^63 – 1 (922,337,203,685,477.5807) 8 bytes
nchar[(n)] Data karakter Unicode dengan jumlah n karakter, dimana n bernilai antara 1 s/d 4000. Karakter Unicode menggunakan 2 bytes untuk setiap character dan mendukung semua karakter internasional. 2 bytes * jumlah karakter
ntext Data Unicode dengan ukuran bervariasi dengan jumlah karakter maksimum 2^30 – 1 (1,073,741,823). 16 bytes untuk pointer dan 2 bytes * jumlah karakter
nvarchar Data karakter Unicode dengan ukuran bervariasi dengan jumlah n karakter, dimana n bernilai antara 1 s/d 4000. 2 bytes * jumlah karakter
real Data numerik dengan ukuran dari 3.40E+38 s/d 3.40E+38. Bersinonim dengan float(24). 4 bytes
smalldatetime Data tanggal dan waktu dari 1 Januari 1900 s/d 6 Juni 2079, dengan tingkat akurasi 1 menit. 4 bytes
smallint Data Integer dari -2^15 (-32,768) s/d 2^15 – 1 (32,767) 2 bytes
smallmoney Data dengan nilai uang dari -214,748.3648 s/d 214,748.3647. 4 bytes
sql_variant Mengizinkan nilai dari tipe data yang berbeda. Ukuran bervariasi
sysname Tipe data khusus, system-supplied, atau SQL Server user-defined data type. Tipe data sysname didefinisikan SQL Server sebagai nvarchar(128), yang artinya mampu menampung 128 karakter Unicode (atau 256 bytes). Gunakan sysname untuk mengacu pada kolom yang menyimpan nama obyek. 256 bytes
table Deklarasi meliputi daftar kolom dan tipe data. Dapat digunakan untuk mendefinisikan variabel lokal atau untuk mengembalikan nilai dari user-defined function. Sesuai definisi tabel
text Digunakan untuk data karakter non-Unicode yang ukurannya lebih dari 8000 byte. Maksimum menyimpan 2^31 – 1 karakter. 16 bytes
timestamp Kolom timestamp diperbaharui secara otomatis setiap kali suatu baris data dimasukkan atau diperbaharui. Setiap tabel hanya boleh memiliki 1 kolom dengan tipe timestamp. 8 bytes
tinyint Data Integer dari 0 s/d 255. 1 byte
unique-identifier Menyimpan nilai biner 16-byte yang merupakan globally unique identifier (GUID) 16 bytes
varbinary Data biner dengan ukuran bervariasi, dimana n bernilai antara 1 s/d 8000. Gunakan varbinary jika ukuran data di dalam kolom diperkirakan akan cukup bervariasi. Panjang data aktual yang dimasukkan + 4 bytes
varchar[(n)] Data karakter non-Unicode dengan ukuran n karakter, dimana n bernilai antara 1 s/d 8000. Panjang data aktual yang dimasukkan

 

 

4.5        Apa itu Transact-SQL?

 

Transact-SQL adalah bahasa pemrograman SQL yang digunakan oleh Microsoft SQL Server untuk mengirim perintah (berinteraksi) antara klien dan server. Sama seperti bahasa SQL lainnya, Transact-SQL (T-SQL) terdiri dari DDL (Data Definition Language) dan DML (Data Manipulation Language).

 

Perintah-perintah DDL dan DML pada T-SQL kurang lebih sama dengan bahasa SQL lainnya.

 

4.5.1      Ekspresi dan Variabel

 

Ekspresi merupakan kombinasi dari simbol-simbol dan operator-operator yang dievaluasi oleh SQL Server 2005 Database Engine untuk mendapatkan suatu nilai data tunggal. Ekspresi yang sederhana dapat berupa konstanta tunggal, variabel, kolom atau fungsi skalar. Operator dapat digunakan untuk menggabungkan dua atau lebih ekspresi menjadi ekspresi yang lebih kompleks.

 

{ constant | scalar_function | [ alias. ] column | local_variable

| ( expression ) | ( scalar_subQuery )

| { unary_operator } expression

| expression { binary_operator } expression

| ranking_windowed_function |

aggregate_windowed_function }

 

constant

Simbol yang merepresentasikan nilai data tunggal spesifik. constant dapat berupa satu atau lebih karakter alfanumerik (a-z, A-Z, 0-9) atau simbol (!), (@), (#), dsb.

scalar_function

Unit sintaks Transact-SQL yang menyediakan fungsi khusus dan mengembalikan nilai tunggal. Misalnya fungsi SUM, GETDATE, atau CAST.

[ alias. ]

Alias atau nama korelasi yang ditentukan pada tabel dengan keyword AS dalam klausa FROM.

column

Nama kolom.

local_variable

Nama variabel yang dibuat oleh pengguna.

( expression )

Semua ekspresi yang valid. Diberi tanda kurung untuk menentukan bahwa ekspresi didalamnya terlebih dulu dievaluasi.

( scalar_subQuery )

Sub Query yang mengembalikan 1 nilai. Contoh: SELECT Count(ID) FROM TableData

{ unary_operator }

Operator yang hanya memiliki 1 operan numerik:

  • + angka positif.
  • - angka negatif
  • ~ operator 1 komplemen

Operator unary hanya bisa diaplikasikan pada ekpresi yang mengevaluasi tipe data yang tergolong dalam data numerik.

{ binary_operator }

Operator yang menentukan bagaimana dua ekspresi digabungkan untuk menghasilkan satu nilai. binary_operator dapat menjadi operator aritmatika, operator assignment (=), operator bitwise, operator perbandingan, operator Logikal, operator penggabungan string(+), atau operator unary.

ranking_windowed_function

Fungsi rangking Transact-SQL.

aggregate_windowed_function

Fungsi agregat Transact-SQL dengan klausa OVER.

 

Variabel adalah suatu referensi atas lokasi memori yang menyimpan data. Bila Anda bekerja pada data yang berubah-ubah dan ingin menempatkan data tersebut pada lokasi memori yang sama maka Anda harus mendefinisikan variabel. Variabel merujuk pada lokasi dimana data anda tersebut disimpan. Variabel pada aplikasi SQL manapun secara umum dikelompokkan ke dalam  2 bagian yaitu:

 

 

  1. a.    Global Variable

Global Variable adalah variabel yang telah dibuat oleh aplikasi yang bersangkutan dan diatur oleh sistem. Untuk Transact-SQL, variabel global ditandai dengan @@. Beberapa variabel global yang sering digunakan antara lain:

 

@@FETCH_STATUS

Variabel ini bernilai 0 bila pernyataan FETCH berhasil mengambil data. Variabel ini diinisialisasi setelah pernyataan FETCH dieksekusi dan umumnya digunakan untuk menghentikan perulangan WHILE pada cursor. Variabel @@FETCH_STATUS juga dapat bernilai –2,

bila baris data yang ingin diambil telah dihapus setelah cursor dibuat. Nilai ini hanya berlaku untuk cursor keyset-driven (scroll).

 

@@CURSOR_ROWS, @@ROWCOUNT

Variabel @@CURSOR_ROWS mengembalikan jumlah baris data dalam cursor yang terbaru. Sedangkan variabel @@ROWCOUNT mengembalikan jumlah baris data yang terperbaharui akibat suatu Query. Variabel @@ROWCOUNT umumnya digunakan bersama pernyataan UPDATE dan DELETE untuk mengetahui berapa jumlah baris data yang telah berhasil diperbaharui.

 

@@ERROR

Variabel ini mengembalikan nilai kesalahan untuk pernyataan SQL yang terakhir kali dijalankan. Jika bernilai 0, artinya pernyataan tersebut suskes dijalankan tanpa kesalahan.

 

@@IDENTITY

Variabel global ini mengembalikan nilai yang paling terakhir digunakan untuk kolom identitas. Kolom identitas bersifat read-only dan dikelola oleh sistem. Setiap ada penambahan data pada tabel, aplikasi menggunakan informasi ini sebagai kunci untuk menambahkan data pada tabel lain terutama yang saling berhubungan melalui foreign key.

 

Selain variabel global diatas, Transact-SQL masih memiliki banyak variabel global lain. Berikut adalah daftar beberapa variabel global yang umum digunakan:

 

Variabel Global Keterangan
@@CONNECTIONS Jumlah Login
@@CPU_BUSY Jumlah total waktu server CPU dalam detik
@@IDLE Jumlah waktu CPU yang sedang tidak bekerja
@@IO_BUSY Jumlah waktu Input/Output
@@LANGID ID Bahasa yang sedang aktif
@@LANGUAGE Nama Bahasa yang sedang aktif
@@MAX_CONNECTIONS Maksimum koneksi dalam waktu yang sama
@@MAX_PRECISION Tingkat ketelitian nilai desimal atau numerik
@@NEST_LEVEL Jumlah nest level yang sedang aktif
@@SERVER_NAME Nama server lokal
@@SPID ID Server yang sedang proses
@@TOTAL_ERRORS Jumlah kesalahan selama SQL berjalan
@@TOTAL_READ Jumlah pembacaan pada Disk
@@TOTAL_WRITE Jumlah penulisan pada Disk
@@TRANCOUNT Total transaksi yang dilakukan active user

 

  1. b.    User-Defined Variable

Jika variabel global adalah variabel yang dibuat oleh sistem, maka variabel ini adalah variabel yang didefinisikan sendiri oleh user. Dalam T-SQL, caranya adalah:

 

DECLARE @nama_variabel tipe_variabel

 

Contoh:

 

DECLARE @intA INT

DECLARE @intX INT, @intY INT, @Z CHAR(5)

 

4.5.2      Fungsi-fungsi

 

Fungsi dalam Transact-SQL dikelompokkan menjadi beberapa bagian. Berikut adalah beberapa kelompok fungsi yang sering digunakan:

  1. Fungsi String

Fungsi-fungsi terkait manipulasi string adalah sebagai berikut:

-      ASCII(karakter), untuk mendapatkan nilai dari karakter

-      Char(nilai), kebalikan dari fungsi ASCII

-      CharIndex(pola, ekspresi), mengembalikan posisi dari hasil pertama dari pencarian argumen pertama dalam argumen kedua. Jika Anda mengenal Visual Basic, maka fungsi ini sama dengan IntStr().

-      Left(string,n), mengembalikan string dari kiri sejauh n karakter

-      Right(string,n), mengembalikan string dari kanan sejauh n karakter

-      Len(string), mengembalikan panjang string

-      DataLength(variabel), mengembalikan panjang dari variabel yang dideklarasikan

 

-      Lower(string), mengubah string menjadi huruf kecil

-      Upper(string), mengubah string menjadi huruf kapital

-      Ltrim(string), menghilangkan spasi di bagian kiri string

-      Rtrim(string), menghilangkan spasi di bagian kanan string

-      Space(n), menambah spasi sejumlah n

-      STR(float,n,dec), mengubah ekspresi float menjadi string sesuai dengan panjang karakter n dan dec untuk menentukan jumlah angka di belakang koma. Misalnya:

 

PRINT STR(3.14159, 4, 2) Hasilnya 3.14

 

-      Replace(string1,string2,string3), untuk mengganti setiap kesamaan string1 di dalam string2 dengan string3.

-      Replicate(karakter,n), untuk mengembalikan string baru dengan mengulang karakter sebanyak n-kali.

-      Reverse(string), membalikkan urutan karakter dari string

-      Substring(string,m,n), mengembalikan string yang diambil dari m sepanjang n. Sama dengan fungsi Mid() dalam Visual Basic

-      Nchar(nilai), mengembalikan karakter Unicode dari nilai

-      STUFF(string1,m,n,string2), mengganti bagian dari string1 mulai dari m sepanjang n dengan string2. Contoh:

 

DECLARE @s CHAR(30)

SET @s = “VB Programming”

SET @s = STUFF(@s,1,2,”SQL”)

PRINT @s

 

Yang tercetak adalah “SQL Programming”

 

  1. Fungsi Konversi

Fungsi-fungsi terkait konversi data adalah sebagai berikut:

 

 

-        Convert(tipedata,var,style), untuk mengkonversi tipe data dari var menjadi tipe data yang didefinisikan. Sedangkan argumen style untuk menentukan format tanggal ketika mengkonversi tipe data DateTime dan SmallDate.

-        Cast(variabel AS tipedata), untuk mengkonversi variabel atau nilai ke dalam tipe data yang ditentukan.

 

  1. Fungsi Tanggal dan Waktu

Fungsi-fungsi terkait dengan penanggalan dan waktu adalah sebagai berikut:

-        GetDate(), mengembalikan tanggal dan waktu saat ini dari mesin yang menjalankan SQL Server

-        DateAdd(interval,num,datetme), menambah nilai argumen datetime dengan interval yang diberikan. Nilai interval yang dapat digunakan ditunjukkan dalam tabel berikut:

 

Interval

Nilai

Range

year

yy, yyyy

1753–9999

quarter

qq, q

1–4

month

mm, m

1–12

dayofyear

dy, y

1–366

day

dd, d

1–31

week

wk, ww

1–53

weekday

Dw

1–7

hour

Hh

0–23

minute

mi, n

0–59

second

Ss

0–59

millisecond

Ms

0–999

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-        DateDiff(interval,datetime1,datetime2), untuk me-ngembalikan selisih antara datetime1 dan datetime2 dalam interval yang diberikan.

-        DatePart(interval,datetime), mengembalikan integer yang mewakili bagian dari datetime.

-        DateName(interval,datetime), mengembalikan nama dari bagian datetime. Contoh:

 

DateName(month, ‘31/05/2007’)

 

Hasilnya adalah May

-        Day(), Month(), Year(), mengembalikan hari, bulan dan tahun.

 

  1. Fungsi Matematika

-        Round(numeric_expression, length [,function]), mengembalikan hari nilai dengan pembulatan yang ditentukan.

-        Floor(numeric_expression), mengembalikan nilai integer terbesar yang kurang dari atau sama dengan nilai yang diberikan.

-        Ceiling(numeric_expression), mengembalikan nilai integer terkecil yang lebih besar dari atau sama dengan nilai yang diberikan.

-        SQRT(float_expression), mengembalikan akar dari nilai yang diberikan.

-        Power(numeric_expression, y), mengembalikan nilai pangkat sesuai dengan faktor pangkat y yang diberikan.

 

  1. Fungsi Lain

-        COALESCE(ekspresi1 [,...n]), fungsi ini bertujuan untuk mengembalikan ekspresi pertama yang tidak null dalam daftar argumen yang diberikan. Misalnya Anda ingin mengetahui kolom yang isinya Null, maka Anda dapat melakukan dengan cara berikut:

 

SELECT nip, COALESCE(alamat, nama)

FROM Pegawai

 

-        IsNull(kolom,nilai), Jika argumen pertama tidak null maka yang dikembalikan adalah nilai dari argumen pertamanya. Bila null maka nilai dari argumen kedua yang dikembalikan. Misalnya:.

 

SELECT nama_barang, ISNULL(harga, 0.0)

FROM Barang

 

-        NullIf(ekspresi1,ekspresi2), jika kedua argumen bernilai sama maka yang dikembalikan adalah null. Jika berbeda maka argumen pertama yang dikembalikan.

 

 

4.5.3      Statement

 

Statement merupakan pernyataan-pernyataan yang dapat berupa perintah, deklarasi, Query, dll di dalam script Transact-SQL.

 

4.5.3.1    Flow Statement            

 

Flow Statement terdiri dari Seleksi dan Perulangan.

  1. Seleksi

Seleksi umumnya memiliki 2 Statement yaitu:

  1. IF…ELSE

Pada T-SQL, Pernyataan IF tidak ditutup dengan END IF. Ada beberapa format yang bisa digunakan antara lain:

 

 

 

IF kondisi

{Statement}

ELSE

{Statement}

 

Atau,

 

IF kondisi

BEGIN

{multiple Statements}

END

ELSE

BEGIN

{multiple Statements}

END

 

  1. CASE

Fungsi pernyataan CASE sama dengan IF. Berikut adalah sintaks penggunaannya dalam T-SQL:

 

CASE ekspresi_input

WHEN ekspresi_1 THEN ekspresi_output_1

 

WHEN ekspresi_n THEN ekspresi_output_n

END

 

  1. Perulangan (Looping)

Pernyataan perulangan dalam SQL dikenal dengan pernyataan WHILE. Perulangan sering digunakan terutama ketika ingin mengambil data dari cursor. Jika pernytaan yang akan dijalankan hanya sebaris maka BEGIN/END tidak diperlukan sama halnya dengan pernyataan IF. Sintaks dalam T-SQL adalah

 

WHILE kondisi

BEGIN

{multiple Statements}

END

 

4.5.3.2    Query Statement          

 

Query di dalam SQL Server dibagi ke dalam 4 jenis, yaitu:

  1. Query SELECT

Query ini digunakan untuk mengambil atau mengekstrak data-data dari tabel-tabel di dalam database. Berikut adalah sintaksnya dalam T-SQL:

SELECT [ ALL | DISTINCT ]

[TOP ekspresi [PERCENT] ]

< select_list >

[ INTO new_table ]

[ FROM { <tabel> } [ ,...n ] ]

[ WHERE <kondisi> ]

[ GROUP BY [ ALL ] ekspresi [ ,...n ]

[ HAVING < kondisi > ]

[ ORDER BY order_expression [ ASC | DESC ] ]

 

Contoh:

Menampilkan semua data dari tabel produk secara berurut.

SELECT * FROM Produk ORDER BY Nama ASC

 

 

Menampilkan nama kota dari tabel karyawan dimana tidak boleh ada nama kota yang berulang.

SELECT DISTINCT Kota FROM Karyawan

 

Menampilkan data produk dengan kode berawalan ‘BK’ ke dalam tabel sementara bernama tabel_prod.

SELECT * INTO #tabel_prod FROM Produk

WHERE Kode  LIKE ‘BK%’

 

Menampilkan harga rata-rata produk diatas 5000 dengan pengelompokan berdasarkan kode produk dan memiliki nama diawali dengan huruf ‘B’.

SELECT Kode, AVG(Harga) AS ‘Harga Rata-Rata’

FROM Produk WHERE HARGA > 5000

GROUP BY Kode

HAVING Nama LIKE ‘B%’

 

  1. Query INSERT

Query ini digunakan untuk menambah data-data baru ke dalam tabel-tabel di dalam database. Berikut adalah sintaksnya dalam T-SQL:

INSERT  [ TOP ( expression ) [ PERCENT ] ] [ INTO]

{

[ ( column_list ) ]

[ <OUTPUT Clause> ]

{ VALUES ( { DEFAULT | NULL | expression } [ ,...n ] )

| derived_table

| execute_Statement

}

}

 

Contoh:

 

INSERT INTO Produk (Kode, Nama, Harga)

VALUES (‘A0012, ‘Paragon’, 25000) );

 

  1. Query UPDATE

Query ini digunakan untuk memperbaharui data-data dari tabel-tabel di dalam database. Berikut adalah sintaksnya dalam T-SQL:

 

UPDATE <nama tabel>

[ TOP ( ekspresi ) [ PERCENT ] ]

SET

{ kolom = { ekspresi | DEFAULT | NULL } }

[ FROM{ <tabel> } [ ,...n ] ]

[ WHERE { <kondisi> } ]

 

Contoh:

 

UPDATE  Produk

SET Harga = 27000 WHERE Kode = ‘A0012’

 

  1. Query DELETE

Query ini digunakan untuk menghapus data-data dari tabel-tabel di dalam database. Berikut adalah sintaksnya dalam T-SQL:

 

DELETE  [ TOP ( ekspresi ) [ PERCENT ] ]

[ FROM{ <tabel> } [ ,...n ] ]

[ WHERE { <kondisi> } ]

Contoh:

                  Hapus semua data produk yang harganya di atas 250000

DELETE FROM Produk

WHERE Harga > 250000

 

4.5.4      Fungsi Agregat

 

Fungsi-fungsi agregat biasanya digunakan didalam pernyataan-pernyataan Query. Fungsi ini antara lain sebagai berikut:

  1. Max()

Digunakan untuk mencari nilai yang terbesar. Contoh:

 

SELECT MAX(totalStok) FROM Produk

 

  1. Min()

Digunakan untuk mencari nilai yang terkecil. Contoh:

 

SELECT SUM(totalStok) FROM Produk

 

  1. Sum()

Digunakan untuk menjumlahkan semua nilai. Contoh:

 

SELECT SUM(total) AS “Grand Total” FROM OrderDetil

 

  1. Count()

Digunakan untuk menghitung jumlah baris data dalam tabel. Contoh:

 

SELECT COUNT(*) FROM Produk

 

 

  1. Avg()

Digunakan untuk menghitung nilai rata-rata. Contoh:

 

SELECT AVG(totalStok) FROM Produk

 

4.5.5      Union dan Join

       

Union berguna untuk menggabungkan kolom yang memiliki tipe data yang sama dan berasal dari dua tabel yang berbeda. Sintaks Union dalam T-SQL adalah sebagai berikut:

 

SELECT <nama field> FROM <nama tabel1>

UNION [ ALL ]

SELECT <nama field> FROM <nama tabel2>

Contoh:

 

Tabel_1 dan Tabel_2 memiliki struktur seperti di bawah ini:

Tabel_1                                   Tabel_2                 

ID              Int                         ID                Int

KolomX       char(3)                   KolomY         char(3)

 

INSERT INTO Tabel_1 VALUES (‘ABC’)

INSERT INTO Tabel_1 VALUES (‘DEF’)

INSERT INTO Tabel_2 VALUES (‘DEF’)

INSERT INTO Tabel_2 VALUES (‘XYZ’)

 

SELECT KolomX FROM Tabel_1

UNION

SELECT KolomY FROM Tabel_2

 

Hasilnya adalah

KolomX

ABC

DEF

XYZ

(3 row(s) affected)

 

Jika Anda menambahkan ALL setelah UNION maka hasilnya adalah

KolomX

ABC

DEF

DEF

XYZ

(4 row(s) affected)

 

         Join berguna untuk menggabungkan 2 tabel atau lebih di dalam basis data. Secara umum, Join dibedakan menjadi 4 jenis yaitu:

  1. Inner Join

Merupakan bentuk join default artinya jika Anda tidak menentukan jenis join dalam Query Anda, maka bentuk joinnya otomatis menggunakan tipe ini. Inner Join akan menggabungkan tabel-tabel berdasarkan primary key atau foreign key dari masing-masing tabel.

Sintaks:

SELECT [<nama tabel>].field [,..n]

FROM <nama tabel1>

[INNER] JOIN <nama tabel2>

ON

[<nama tabel1>].field = [<nama tabel2>].field

 

 

Contoh:

SELECT p.KodeProd, s.Jumlah

FROM Produk p

INNER JOIN Sales s

ON p.KodeProd = s.KodeProd

ORDER BY p.KodeProd ;

 

Data yang muncul hanyalah data dari kode yang sama antara KodeProd di tabel Produk dan tabel Sales.

 

  1. Outer Join

Outer Join dibedakan lagi menjadi 2 jenis, yakni:

  1. a.     Left Outer Join

Menggabungkan tabel dimana tabel kiri yang menjadi patokan.

 

SELECT [<nama tabel>].field [,..n]

FROM <nama tabel1>

LEFT [OUTER] JOIN <nama tabel2>

ON

[<nama tabel1>].field = [<nama tabel2>].field

 

Contoh:

 

Tabel_1

Kode       Nama           Alamat

001         Sammy         Pemuda No. 100

002         Helen            Keluarga No. 390

 

 

 

Tabel_2

Kode       Materi                              Nilai

002         SQL Server                       90

002         Web Programming            98

 

SELECT t1.Kode, Nama, Materi, Nilai

FROM Tabel_1 t1

LEFT OUTER JOIN Tabel_2 t2

ON t1.Kode = t2.Kode

 

Hasil

Kode       Nama           Materi                              Nilai

001         Sammy         NULL                               NULL

002         Helen            SQL Server                       90

002         Helen            Web Programming            98

 

  1. Right Outer Join.

Menggabungkan tabel dimana tabel kanan yang menjadi patokan.

 

SELECT [<nama tabel>].field [,..n]

FROM <nama tabel1>

RIGHT [OUTER] JOIN <nama tabel2> ON

[<nama tabel1>].field = [<nama tabel2>].field

 

Contoh:

SELECT t1.Kode, Nama, Materi, Nilai

FROM Tabel_1 t1

RIGHT OUTER JOIN Tabel_2 t2

ON t1.Kode = t2.Kode

 

Hasil

Kode       Nama           Materi                              Nilai

002         Helen           SQL Server                       90

002         Helen           Web Programming            98

 

  1. 3.     Full Join

Menggabungkan kolom-kolom dari beberapa tabel. Sintaknya yaitu:

 

SELECT [<nama tabel>].field [,..n]

FROM <nama tabel1>

 

FULL JOIN <nama tabel2>

ON

[<nama tabel1>].field = [<nama tabel2>].field

 

Contoh:

 

SELECT Nama, Alamat, Materi FROM Tabel_1

FULL JOIN Tabel_2

ON Tabel_1.Kode = Tabel_2.Kode

 

Hasil

Nama      Alamat                   Materi

Sammy    Pemuda No. 100     NULL

Helen      Keluarga No. 390    SQL Server

Helen      Keluarga No. 390    Web Programming

 

 

 

 

  1. 4.     Cross Join

Menggabungkan kolom-kolom dari beberapa tabel secara silang. Sintaknya yaitu:

 

SELECT [<nama tabel>].field [,..n]

FROM <nama tabel1>

CROSS JOIN <nama tabel2>

ON

[<nama tabel1>].field = [<nama tabel2>].field

 

Contoh:

SELECT Nama, Alamat, Materi FROM Tabel_1

CROSS JOIN Tabel_2

ON Tabel_1.Kode = Tabel_2.Kode

 

Hasil

Nama      Alamat                   Materi

Sammy    Pemuda No. 100     SQL Server

Helen      Keluarga No. 390    SQL Server

Sammy    Pemuda No. 100     Web Programming

Helen      Keluarga No. 390    Web Programming

 

4.6        Membuat Basis Data

 

4.6.1      Menggunakan T-SQL dan Enterprise Manager

 

Anda dapat membuat sebuah database dengan menggunakan DDL dari Transact-SQL. Sama seperti perintah DDL dari bahasa SQL lainya, T-SQL juga menggunakan perintah-perintah CREATE DATABASE, CREATE TABLE, dan sebagainya.

 

Berikut adalah sintaks T-SQL untuk membuat Database:

CREATE DATABASE database_name

[ ON

[ PRIMARY ] [ <Filespec> [ ,...n ]

[ , <Filegroup> [ ,...n ] ]

[ LOG ON { <Filespec> [ ,...n ] } ]

]

[ COLLATE collation_name ]

[ WITH <external_access_option> ]

]

[;]

 

Contoh:

 

CREATE DATABASE Sales

ON

( NAME = Sales_dat,

FILENAME = ‘C:\TestSQL\’ + ‘saledat.mdf’,

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = Sales_Log,

FILENAME = ‘C:\TestSQL\’ + ‘saleLog.ldf’,

SIZE = 5MB,

MAXSIZE = 25MB,

FILEGROWTH = 5MB )’

GO

 

 

 

Untuk membuat basis data dengan cara yang lebih mudah Anda dapat menggunakan SQL Enterprise Manager yang menyediakan antar muka grafis. Dengan Enterprise Manager, Anda tidak perlu mengetikkan kode-kode DDL secara manual seperti diatas. Anda cukup memilih dan menentukan karakteristik basis data Anda.

Gambar 4.7 SQL Server Enterprise Manager

 

Berikut adalah langkah-langkah membuat basis data dengan Enterprise Manager.

  1. Buka Enterprise Manager. Pada panel kiri, Pilih item SQL Server Group yang mencakup nama server dimana Anda ingin membuat basis data Anda. Pilih item Databases di dalam Server tersebut, klik kanan dan pilihlah New Database.

 

 

  1. Pada dialog Database Properties yang muncul, pada tab General, masukkan nama basis data yang ingin Anda buat pada isian Name. Lihat gambar 4.8.
  2. Klik tab Data Files. Seperti ditunjukkan dalam gambar 4.9, Enterprise Manager secara otomatis membuat File data primer, dengan nama diawali nama basis data dan dengan PRIMARY sebagai grup File. Anda dapat mengubah nama, lokasi, dan ukuran dari File primer, tetapi tidak dapat mengubah grup File. Ketikan nama File, lokasi dan ukuran serta grup File untuk setiap File data yang Anda buat. Pada setiap File data kecuali File data primer, Anda dapat mengetikkan grup File Anda sendiri. Misalnya kita membuat File data sekunder MyDB_Data2 di dalam grup File My_FG.

 

Gambar 4.8 DiaLog Database Properties – Tab General

 

Gambar 4.9 DiaLog Database Properties – Tab Data Files

 

  1. Setelah selesai, maka basis data Anda akan muncul pada daftar basis data di dalam SQL Server Enterprise Manager.

Lalu apakah langkah selanjutnya? Tentu proses pembuatan basis data belum selesai. Seperti yang kita ketahui, basis data merupakan kumpulan data-data yang diorganisasi sedemikian rupa ke dalam bentuk tabel-tabel. Jadi, setelah basis data selesai dibuat maka yang perlu kita lakukan adalah membuat dan menambah tabel-tabel ke dalam basis data bersangkutan.

 

Untuk membuat tabel, Anda juga tentu bisa melakukannya dengan perintah DML, CREATE TABLE.

 

 

Sintaknya dalam T-SQL adalah:

CREATE TABLE <nama tabel>

( <nama field> <tipe data> [(panjang karakter)] [,..n]

[ CONSTRAINT constraint_name ]

{     { PRIMARY KEY | UNIQUE }

[ CLUSTERED | NONCLUSTERED ]

[ ON { partition_scheme_name ( partition_column_name )

| Filegroup | “default” } ]

| [ FOREIGN KEY ]

REFERENCES [ schema_name . ] referenced_table_name

[ ( ref_column ) ]

[ ON DELETE { NO ACTION | CASCADE | SET NULL |

SET DEFAULT } ]

[ ON UPDATE { NO ACTION | CASCADE | SET NULL |

SET DEFAULT } ]

[ NOT FOR REPLICATION ]

| CHECK [ NOT FOR REPLICATION ] ( Logical_expression )

})

[;]

 

Contoh:

 

CREATE TABLE Product_Info

(

Product_ID  SMALLINT,

Product_Name CHAR(20),

Description CHAR(30),

Price SMALLMONEY,

Brand_ID SMALLINT

)

GO

 

Jika menggunakan SQL Enterprise Manager, maka caranya hampir sama dengan cara membuat basis data. Pertama, buka basis data baru Anda kemudian klik kanan pada item “Tables” dan pilih “New Table” dan dialog New Table akan terbuka (gambar 4.10).

 

Gambar 4.10 DiaLog New Table

 

Definisikan isi tabel anda dengan mengisi nama kolom, menentukan tipe data dan ukurannya. Bagian “Allow Nulls” menentukan apakah kolom boleh berisi nilai null (tidak ada data) atau harus mengandung suatu nilai atau sebaliknya. Anda harus melakukannya baris demi baris. Pada bagian bawah, Anda bisa mengatur karakteristik kolom Anda misalnya nilai default, dan sebagainya. Lihat gambar 4.11.

 

 

Anda juga dapat menentukan constraints dan indeks lain pada tabel dengan mengklik kanan kolom apa saja dan memilih Indexes/Keys, Relationships, Constraints, atau Properties dari menu yang muncul. Atau Anda juga bisa mengklik icon Table And Index Properties yang berada di dekan icon Save pada toolbar.

Gambar 4.11 Mendefinisikan Tabel Baru Anda

Gambar 4.12 DiaLog Properties

Jika tabel yang Anda buat berhasil maka nama tabel tersebut akan ditambah ke dalam daftar “Tables” pada Enterprise Manager.

 

4.6.2      Membuat dan menjalankan Query                                      

 

Anda tentu telah tahu bagaimana menggunakan pernyataan Query INSERT, DELETE, UPDATE dan SELECT pada sub topik sebelumnya.

 

SQL Server menyediakan Query Analyzer pada Anda untuk membuat dan menjalankan pernyataan-pernyataan atau script T-SQL sekaligus menampilkan hasilnya. Untuk menjalankan Query Analyzer, ikuti langkah berikut ini:

 

 

  1. Jalankan Query Analyzer dengan salah satu metode berikut:
    1. Ketik isqlw pada command prompt.
    2. Buka Enterprise Manager dan pilih SQL Query Analyzer dari menu Tools.
    3. Dari menu Start window, pilih menu Programs, pilih Microsoft SQL Server, dan kemudian pilih Query Analyzer

 

DiaLog Connect to SQL Server akan terbuka bila Anda belum terhubung ke Server.

 

Gambar 4.13 DiaLog Connect to SQL Server

  1. Pilih nama server dari drop-down list. Ketikkan Login Anda. Dan klk OK, maka window Query Analyzer akan terbuka seperti ditunjukkan oleh gambar 4.14 berikut.

 

 

 

 

 

Gambar 4.14 SQL Query Analyzer

 

  1. Ketikkan perintah, pernyataan, script T-SQL atau stored-procedure pada window ini.
  2. Untuk menjalankannya, klik icon panah pada toolbar atau cukup tekan kombinasi tombol Ctrl+E.

 

Gambar 4.15 Contoh Eksekusi Query Dengan SQL Query Analyzer

 

4.7        Stored Procedure dan Trigger

4.7.1      Stored Procedure

 

Stored Procedure adalah kumpulan pernyataan SQL yang disimpan di server, sehingga dapat digunakan kapan saja untuk melakukan suatu perintah tertentu tanpa harus mendefinisi ulang perintah-perintah setiap kali diperlukan.

 

Prosedur memberikan konsistensi dan lingkungan yang aman juga dapat memastikan seluruh operasi tercatat dengan benar. Pengguna tidak memiliki akses secara langsung kedalam tabel-tabel di dalam basis data tetapi dapat menjalankan prosedur-prosedur yang telah didefinisikan sebelumnya. Stored procedure meningkatkan kinerja dan efisiensi karena tidak membutuhkan pengiriman banyak informasi antara klien dan server. Prosedur juga dapat dieksekusi dari aplikasi lain diluar aplikasi SQL sehingga sifatnya re-usable (dapat digunakan kembali).

 

Sintaks untuk membuat stored procedure pada T-SQL adalah sebagai berikut:

 

CREATE { PROC | PROCEDURE } [schema_name.]

procedure_name [ ; number ]

[ { @parameter [ type_schema_name. ] data_type }

AS { <sql_Statement> [;][ ...n ] | <method_specifier> }

[;]

 

Sedangkan untuk menjalankan prosedur adalah dengan sintaks:

 

EXEC nama_prosedur

 

Atau, cukup dengan memanggil nama prosedurnya saja. Untuk mengubah stored procedure digunakan sintaks:

 

ALTER PROCEDURE nama_prosedur

AS {Statements}

 

Contoh:

USE Perusahaan;

GO

IF EXISTS (SELECT name FROM sysobjects

WHERE name = ‘CariKaryawan’)

DROP PROCEDURE CariKaryawan

GO

CREATE PROCEDURE CariKaryawan

@nama varchar(25) = ‘D%’,

AS

SELECT Nama, Jabatan, Departemen FROM Karyawan

WHERE Nama LIKE @nama

GO

 

Untuk menjalankan Prosedur diatas, gunakan perintah sebagai berikut:

 

EXECUTE CariKaryawan

 

Contoh dengan parameter:

 

USE Northwind

GO

 

IF EXISTS (SELECT name

FROM   sysobjects

WHERE  name = ”LateShipments”)

DROP PROCEDURE LateShipments

GO

 

CREATE PROCEDURE LateShipments @shipperName char(40)

AS

SELECT RequiredDate,

ShippedDate,

Shippers.CompanyName

FROM   Orders, Shippers

WHERE  ShippedDate > RequiredDate AND

Orders.ShipVia = Shippers.ShipperID AND

Shippers.CompanyName = @shipperName

GO

 

Untuk menjalankan prosedur ini Anda harus memberikan parameter.

 

EXECUTE LateShipments “FedEx”

 

4.7.2      Trigger

 

Trigger adalah kode-kode logik yang didefinisikan agar dapat dieksekusi apabila terjadi suatu proses yang mengubah kondisi record dalam tabel baik oleh pernyataan INSERT, UPDATE maupun DELETE. Trigger biasanya digunakan untuk memeriksa nilai atau data dari sebuah record sebelum record tersebut dimasukkan ke dalam tabel.

 

Trigger pada pernyataan INSERT, UPDATE, or DELETE di dalam tabel/view (DML Trigger)

 

CREATE TRIGGER [ schema_name . ]trigger_name

ON { table | view }

[ WITH <dml_trigger_option> [ ,...n ] ]

{ FOR | AFTER | INSTEAD OF }

{ [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }

[ WITH APPEND ]

[ NOT FOR REPLICATION ]

AS { sql_Statement  [ ; ] [ ...n ] | EXTERNAL NAME <method specifier [ ; ] > }

 

Trigger pada pernyataan CREATE, ALTER, DROP, GRANT, DENY, REVOKE, atau UPDATE STATISTICS (DDL Trigger)

 

CREATE TRIGGER trigger_name

ON { ALL SERVER | DATABASE }

[ WITH <ddl_trigger_option> [ ,...n ] ]

{ FOR | AFTER } { event_type | event_group } [ ,...n ]

AS { sql_Statement  [ ; ] [ ...n ] | EXTERNAL NAME < method specifier >  [ ; ] }

 

Contoh prosedur Trigger dengan T-SQL:

 

USE Perusahaan

IF EXISTS (SELECT name FROM sysobjects

WHERE name = ‘peg_insupd’ AND type = ‘TR’)

DROP TRIGGER peg _insupd

GO

CREATE TRIGGER peg_insupd ON Pegawai

FOR INSERT, UPDATE

AS

DECLARE @tk_min TINYINT,

@tk_maks TINYINT,

@tk_peg TINYINT,

@kd_pek SMALLINT

SELECT @tk_min = tk_min,

@tk_maks = tk_maks,

@tk_peg = i.tk_pek,

@kd_pek = i.kd_pek

FROM Pegawai p INNER JOIN inserted i ON p.nip = i.nip

JOIN Pekerjaan k ON k.kd_pek = i.kd_pek

IF NOT (@tk_peg BETWEEN @tk_min AND @tk_maks)

BEGIN

 

RAISERROR (‘Tingkat Pegawai untuk Kode Pekerjaan:%d harus bernilai antara %d dan %d.’,

16, 1, @kd_pek, @tk_min, @tk_maks)

ROLLBACK TRANSACTION

END

 

 

Pada SQL Server, dikenal pula yang namanya Instead of Trigger. Jenis trigger ini memungkinkan kita untuk mendefinisikan trigger pada sebuah view. Namun, tidak diperbolehkan pada pada view yang menyertakan CHECK OPTION. Pada Instead of trigger, DELETE tidak diperbolehkan pada tabel yang memiliki relasi dengan jenis ON DELETE CASCADE. Demikian halnya juga dengan perintah UPDATE tidak diizinkan pada tabel yang berhubungan dengan relasi ON UPDATE CASCADE.

 

Misalnya kita ingin melakukan INSERT data pada sebuah tabel. Tentu saja kita tidak bisa memasukkan dua data dengan primary key yang sama. Bila ternyata nilai yang kita masukkan sebagai PK telah ada, maka akan muncul peringatan kesalahan. Untuk menghindari hal ini, kita dapat menggunakan Instead of Trigger untuk memproses data tersebut:

CREATE TABLE tabelTes (

id_tes INT NOT NULL PRIMARY KEY,

ket_tes VARCHAR(20) NOT NULL )

GO

 

CREATE TRIGGER trig_tes ON tabelTes

INSTEAD OF INSERT

AS

IF @@ROWCOUNT = 0 RETURN

UPDATE t –- jika id sudah ada

SET ket_tes = i. ket_tes

FROM inserted i

JOIN tabelTes t ON t.id_tabel = i.id_tabel

 

 

INSERT tabelTes

SELECT id_tabel, ket_tes FROM

inserted i

WHERE NOT EXISTS ( SELECT * FROM tabelTes t

WHERE t.id_tabel = i.id_tabel )

GO

 

4.8        Administrasi SQL Server

 

Kunci kinerja yang baik adalah melakukan konfigurasi SQL Server dengan tepat dan melakukan pemeliharaan secara rutin. Pada topik ini kita membahas bagaimana mengelola sistem keamanan pada SQL Server, Konsep SQL Server Agent dan mempelajari Data Transformation Service.

 

4.8.1      Sistem Keamanan Pada SQL Server

 

Masalah keamanan data adalah hal yang tidak terpisahkan dari proses pengelolaan dan administrasi database. Keamanan data memiliki beberapa dasar, antara lain:

  1. Setiap orang dengan 1 Login ID dan 1 Password
  2. Masa berlaku password
  3. Panjang password
  4. Jumlah percobaan untuk Login
  5. Tempat penyimpanan user dan password

 

Pada SQL Server 2000 (Versi diatas SQL Server 7.0) seperti yang dijelaskan sebelumnya pada topik instalasi, memiliki 2 pilihan keamanan, yaitu:

  1. Windows Authentication (NT Integrated Security)
  2. Mixed Mode (Gabungan NT dan SQL Server Security)

 

4.8.1.1    NT Integrated Security

 

Jenis ini merupakan jenis keamanan pada SQL Server yang menggunakan account dan group yang sudah ada pada domain NT dimana SQL Server berada. Dalam hal ini adalah Windows misalnya.

 

Cara memberikan akses kepada pengguna NT adalah dengan menggunakan perintah stored-procedure sp_grantlogin. Sintaknya yaitu:

 

sp_grantLogin [@Loginname=]’<DomainName>\NT UserName>’

 

4.8.1.2    Keamanan SQL Server 2000

 

Keamanan pada SQL Server 2000 diawali dengan pembuatan Login ID. Misalnya sa, yang merupakan Login ID default pada saat instalasi SQL Server dilakukan. Untuk membuat Login ID, Anda dapat melakukannya baik dengan T-SQL maupun Enterprise Manager.

 

Bila Anda menggunakan T-SQL, maka Anda dapat menggunakan stored-procedure sp_addlogin untuk menambah atau membuat Login ID baru. Sintaksnya adalah sebagai berikut:

sp_addLogin [@Loginname=]<’Login’>

[,[@password=]<’password’>]

[,[@defdb=]<’database’>]

[,[@deflanguage=]<’language’>]

[,[@sid=]<’sid’>]

[,[@encryptopt=]<’encrypt_option’>]

 

Dimana:

-       @Loginname    : mewakili nama Login

-       @password      : mewakili password

-       @defdb            : mewakili default basis data untuk pengguna

tersebut

-       @deflanguage   : berupa bahasa default bagi pengguna ini

-       @sid                : identifier sistem untuk SQL Server. SID

akan dibuat secara otomatis bila tak diisi.

-       @encryptopt    : menentukan apakah Login dan password itu

di-encrypt atau tidak.

 

Untuk mengubah password, Anda bisa menggunakan perintah:

 

sp_password [[@old=]<’oldpassword’>,]

[@new=]<’newpassword’>],

[@Loginname=]<’Login’>

 

Untuk membuat Login ID menggunakan Enterprise Manager, pilihlah folder security lalu klik kanan pada icon Logins dan pilih New Login.

 

DiaLog SQL Server login Properties akan terbuka. Masukkan nama Login ID yang Anda inginkan, kemudian pilihlah SQL Server Authentication untuk menggunakan SQL Server Security.

 

Masukkan password Anda, kemudian tentukan basis data dan bahasa default yang diperuntukkan untuk pengguna yang baru Anda definisikan.

 

 

 

Anda kemudian bisa menentukan Server Role untuk pengguna ini pada tab Server Roles, atau basis data apa saja yang bisa diakses oleh pengguna ini pada tab Database Access.

 

Untuk lebih jelas baca sub topik Server dan Database Roles.

Gambar 4.16a SQL Server Login Properties – Tab General

 

Gambar 4.16b SQL Server Login Properties – Tab Server Roles

Gambar 4.16c SQL Server Login Properties – Tab Database Access

 

4.8.1.3    Hak Akses Pengguna

 

Hak akses pengguna merupakan salah satu poin penting dalam basis data. Disini kita menentukan hak bagi setiap pengguna untuk melakukan sesuatu dalam SQL Server. Hak akses pengguna dikelompokkan menjadi 3 jenis yaitu:

  1. Hak untuk Login
  2. Hak untuk mengakses basis data tertentu
  3. Hak untuk menjalankan aktivitas tertentu dalam suatu obyek pada basis data tertentu.

 

Hal yang perlu dilakukan agar seorang pengguna memiliki akses ke sebuah basis data adalah dengan memberi pengguna tersebut hak akses ke basis data tersebut. Anda dapat melakukannya dengan stored-procedure sp_grantdbaccess menggunakan T-SQL:

 

sp_grantdbaccess [@Loginname=]<’Login’>

[,[@name_in_db=] <’name_in_db’>]

 

Atau anda dapat menggunakan Enterprise Manager. Caranya klik kanan pada icon Users dan pilih New Database User.

 

Gambar 4.17 Dialog Database User Properties

 

Selain hak penuh ke dalam basis data, adakalanya seorang pengguna hanya diizinkan untuk mengakses obyek-obyek tertentu (tabel, view atau stored-procedure) di dalam basis data. Hak akses untuk obyek tertentu dibagi menjadi 6 kategori, yaitu:

-       SELECT            : Hak untuk melihat data

-       INSERT            : Hak untuk menambah data

-       UPDATE           : Hak untuk memperbaharui data

-       DELETE            : Hak untuk menghapus data

-       REFERENCES    : Hak untuk menambah data pada tabel yang

Foreign key-nya memiliki referensi ke tabel

lain.

-       EXECUTE          : Hak untuk menjalankan stored-procedure.

 

 

 

Pernyataan T-SQL untuk memberikan hak akses pada obyek tertentu adalah GRANT. Sintaksnya adalah:

 

GRANT { ALL [ PRIVILEGES ] }

| permission [ ( column [ ,...n ] ) ] [ ,...n ]

 

[ ON [ class :: ] securable ] TO principal [ ,...n ]

[ WITH GRANT OPTION ] [ AS principal ]

 

Sebaliknya pernyataan T-SQL untuk mencegah pengguna untuk mengakses obyek tertentu adalah DENY. Sintaksnya adalah:

 

DENY { ALL [ PRIVILEGES ] }

| permission [ ( column [ ,...n ] ) ] [ ,...n ]

[ ON [ class :: ] securable ] TO principal [ ,...n ]

[ CASCADE] [ AS principal ]

 

SQL Server juga menyediakan pernyataan T-SQL untuk membatalkan semua efek yang telah diberikan dengan pernyataan GRANT dan DENY pada pengguna.  Yaitu dengan menggunakan pernyataan REVOKE. Sintaksnya adalah:

 

REVOKE [ GRANT OPTION FOR ]  {

[ ALL [ PRIVILEGES ] ]  |

permission [ ( column [ ,...n ] ) ] [ ,...n ]

}

[ ON [ class :: ] securable ]

{ TO | FROM } principal [ ,...n ]

[ CASCADE] [ AS principal ]

 

 

TO digunakan untuk menghapus DENY dan FROM untuk menghapus GRANT.

 

4.8.1.4    Server dan Database Roles

 

SQL Server 2000 membedakan role ke dalam 2 kategori, yaitu:

  1. 1.    Server Roles

Merupakan kumpulan hak akses yang berhubungan dengan administrasi Server. SQL Server memiliki role server sebagai berikut (lihat gambar 4.16b):

-       SysAdmin, memiliki kemampuan untuk menjalankan aktivitas apapun dalam server tersebut.

-       ServerAdmin, dapat mengatur konfigurasi server dan mematikan server.

-       SetupAdmin, hanya memiliki hak untuk mengatur prosedur startup.

-       SecurityAdmin, menangani administrasi Login untuk pengguna.

-       ProcessAdmin, menangani proses yang berjalan dalam SQL Server.

-       DBCreator, hanya memiliki hak untuk membuat dan mengubah basis data.

-       DiskAdmin, menangani File-File pada disk.

-       BulkAdmin, memiliki kemampuan untuk menjalankan pernyataan BULK insert.

 

  1. 2.    Database Roles

Merupakan kumpulan hak akses yang berhubungan dengan basis data. Masing-masing basis data memiliki role sendiri sehingga lingkup role basis data hanya berada pada satu basis data saja. SQL Server memiliki role basis data sebagai berikut (lihat gambar 4.16c) :

-       db_owner, memiliki hak untuk melakukan apa saja pada basis data tersebut.

-       db_accessadmin, seperti SecurityAdmin pada Server Role, hanya saja terbatas pada satu basis data serta dapat menambah pengguna baru.

-       db_datareader, dapat menjalankan pernyataan SELECT.

-       db_datawriter, dapat menjalankan pernyataan INSERT, UPDATE, DELETE.

-       db_ddladmin, dapat menambah, mengubah atau menghapus obyek dalam basis data.

-       db_securityadmin, menangani Login pengguna yang sudah ada pada basis data tersebut.

-       db_backupoperator, dapat menjalankan proses backup.

-       db_denydatareader, tidak dapat menjalankan pernyataan SELECT.

-       db_denydatawriter, tidak dapat menjalankan pernyataan INSERT, UPDATE, dan DELETE.

 

4.8.2      SQL Server Agent

 

SQL Server Agent memiliki kemampuan untuk menjalankan beberapa tugas secara periodik pada basis data dengan menotifikasi Database Administrator (DBA) atau orang yang ditentukan bahwa suatu masalah atau suatu event telah terjadi pada server. Dengan menggunakan fungsi ini maka DBA tidak perlu terus menerus memantau secara manual sistem basis data tersebut untuk menentukan kapan harus menjalankan proses-proses tertentu. Oleh karena itu, memiliki lebih banyak waktu untuk mengurus masalah-masalah basis data yang lebih rumit seperti membangun dan menyesuaikan indeks, mengoptimasi Query, atau merencanakan perkembangan ke depannya.

 

Ada tiga alat bantu utama yang digunakan untuk mengotomatisasikan pekerjaan administratif yaitu jobs, alerts, dan operators.

 

Enterprise Manager menyediakan antar muka yang ramah untuk mengelola layanan SQL Server Agent. Untuk melakukannya ikuti langkah-langkah berikut:

  1. Klik Server yang ingin Anda akses, lalu pilih folder Management seperti terlihat pada gambar 4.18 di bawah ini.

 

Gambar 4.18 Management Folder

  1. Klik kanan pada SQL Server Agent di panel kiri atau klik kanan pada icon SQL Server Agent di panel kanan. Pada popup menu, Anda dapat menjalankan atau menghentikan layanan SQL Server Agent; melihat catatan kesalahan; membuat job, alert, atau operator; atau melihat properti.

 

  1. Pilih Properties dan dialog SQL Server Agent Properties akan ditampilkan seperti terlihat pada gambar 4.19 berikut.

 

  1. Disini, Anda dapat mengkonfigurasi beberapa opsi untuk layanan SQL Server Agent melalui tab-tab yang ada: General, Advanced, Alert System, Job System, dan Connection.

 

Gambar 4.19 Dialog SQL Server Agent Properties

 

 

 

4.8.3      Data Transformation Service

 

DTS (Data Transformation Service), adalah bagian dari SQL Server Enterprise Manager, yang dirancang untuk membantu Anda untuk melakukan transfer data (ekspor/impor) dari/ke basis data dengan lebih mudah. Fasilitas ini hanya terdapat pada SQL Server 7/2000. Pada SQL Server 2005, DTS telah dihilangkan dan digantikan dengan SSIS (SQL Server Integration Service) yang lebih kompleks.

 

Selain menyediakan kemampuan untuk transfer data, DTS juga mampu melakukan proses transformasi data yang berarti mengubah data pada saat transfer data berlangsung dengan beberapa aturan Logical.

 

4.8.3.1    DTS Package Editor

 

DTS Package Editor adalah sebuah alat bantu yang berguna untuk membuat paket DTS yang didalamnya terdapat proses-proses transfer maupun transformasi data.

 

Cara mengaktifkan paket DTS. Klik kanan pada folder Data Transformation Service di Enterprise Manager, lalu pilih New Package dan window DTS Package Editor akan ditampilkan. Ada beberapa komponen yang dapat digunakan dalam DTS Package Editor, yaitu:

  1. 1.    Connection

Merupakan obyek yang berperan sebagai jembatan koneksi antara sumber data dengan SQL Server.

 

 

 

  1. 2.    Task

Merupakan komponen pada package editor berupa unit-unit pekerjaan yang akan dilakukan oleh DTS. Beberapa task yang umum digunakan adalah:

-       FTP, mendownload/mengupload data melalui File Transfer Protocol.

-       Transform Data, melakukan proses transformasi data pada saat transfer data berlangsung.

-       Execute SQL, menjalankan pernyataan T-SQL.

-       Execute Package, menjalankan paket DTS yang sudah ada.

-       Transfer Database, mentransfer basis data.

4.8.3.2    Import Wizard

 

Untuk menggunakan Import Wizard ikuti langkah-langkah dibawah ini.

  1. Pada Enterprise Manager, pilih nama server dimana Anda ingin memasukkan data hasil impor. Lalu dari menu Tools, Pilih Wizards. Klik DTS Import Wizard pada dialog select dan tekan tombol OK. Anda juga dapat melakukannya dengan mengklik kanan nama server, pilih All Tasks, lalu klik Import Data.
  2. Klik Next untuk menampilkan layar Choose A Data Source seperti pada gambar 4.21.

Pilihlah sumber data dari drop-down list. Anda dapat memilih sumber data berikut:

-            Text File

-            dBase

-            Microsoft Access

-            Microsoft Data Link

-            Microsoft Excel

-            Microsoft Visual FoxPro

-            Other ODBC data source

-            Other OLE DB data source

-            Paradox

 

Pilihan ini bergantung pada driver ODBC yang terdapat pada komputer Anda.

Gambar 4.20 DiaLog DTS Import/Export Wizard

Gambar 4.21 Pilih Sumber Data – Impor

 

  1. Pilih Next untuk menampilkan layar Select File Format, Layar ini hanya muncul jika Anda memilih sumber data Text File. Ada beberapa pilihan format yang dapat Anda gunakan antara lain sebagai berikut:

-        Delimited dan Fixed Field untuk memilih format dari File input, karakter pemisah atau panjang karakter tertentu.

-        File Type untuk menentukan format File input File apakah berupa File ANSI, OEM, atau Unicode.

-        Row Delimiter untuk menentukan apakah karakter yang digunakan untuk menterminasi tiap baris di dalam File input.

-        Text Qualifier dapat digunakan untuk menentukan teks di dalam File delimited.

-        Skip Rows untuk menentukan berapa banyak baris pada awal File input yang dilompati.

-        First Row Has Column Names untuk menentukan bahwa baris pertama bukanlah data tetapi label dan dilompati.

Gambar 4.22 Pilih Format File

  1. Pilih format File Delimited, {CR}{LF} untuk pemisah, dan tanpa Qualifier teks. Klik tombol Next.

Gambar 4.23 Layar Specify Column Delimiter

  1. Pilihlah salah satu delimiter yang Anda inginkan dan tekan tombol Next. Anda akan mendapatkan layar Choose A Destination screen. Pada layar ini, tentukan basis data dimana Anda ingin mengimpor data. Pilih salah satu tipe otentikasi: Windows NT atau SQL Server authentication.

Gambar 4.24 Layar Choose A Destination – Impor

 

  1. Tekan tombol Next dan pada layar berikutnya pilih tabel dimana data akan di-load.
  2. Anda juga bisa melakukan transformasi data dari layar ini. Klik tombol Transform untuk membuka dialog Column Mappings And Transformations, seperti pada gambar 4.26. Pada tab Column Mappings, Anda dapat memilih membuat tabel baru, menghapus baris dari atau menambah baris pada tabel yang sudah ada. Pilihan default adalah Append Rows To Destination Table. Jika Anda memilih untuk membuat tabel baru, tombol Edit SQL akan mengizinkan Anda untuk melihat dan mengubah pernyataan SQL yang Anda gunakan untuk membuat tabel baru.

Gambar 4.25 Layar Select Source Tables and Views

 

  1. Klik tab Transformations untuk melihat pilihan-pilihan transformasi, seperti gambar 4.27. Pada tab ini, Anda dapat memilih untuk meng-copy secara langsung ke kolom atau mentransformasi informasi.

 

  1. Klik OK dan klik Next untuk menampilkan layar Save, Schedule, And Replicate Package, seperti ditunjukkan gambar 4.28. Anda bisa melakukan impor sekarang atau menjadwalkannya untuk waktu tertentu.

 

 

 

 

Gambar 4.26 Dialog Column Mappings And Transformations – Tab Column Mappings

Gambar 4.27 Dialog Column Mappings And Transformations – Tab Transformations

Gambar 4.28 Layar Save, Schedule And Replicate Package

 

10. Klik Next untuk menampilkan layar Completing The DTS Import/Export Wizard dan klik Finish untuk impor.

11. Setelah Anda klik Finish, Anda akan melihat layar Executing Package. Sebuah kotak pesan akan muncul menginformasikan pada Anda bahwa proses copy telah selesai atau terjadi kesalahan.

 

Gambar 4.29 Layar Completing The DTS Import/Export Wizard

 

Gambar 4.30 Layar Executing Package – Import

 

 

 

4.8.3.3    Export Wizard

 

Cara menggunakan Export Wizard hampir sama seperti Import Wizard. Berikut adalah langkah-langkahnya.

  1. Pada Enterprise Manager, pilih nama server dimana Anda ingin memasukkan data hasil impor. Lalu dari menu Tools, Pilih Wizards. Klik DTS Export Wizard pada dialog select dan tekan tombol OK. Anda juga dapat melakukannya dengan mengklik kanan nama server, pilih All Tasks, lalu klik Export Data.
  2. Klik Next untuk menampilkan layar Choose A Data Source (lihat gambar 4.31).
  3. Klik Next untuk menampilkan layar Choose A Destination. (lihat gambar 4.32).

 

Gambar 4.31 Layar Pilih Sumber Data – Ekspor

 

 

Gambar 4.32 Layar Choose A Destination – Ekspor

 

  1. Klik Next untuk menampilkan layar Specify Table Copy Or Query. Pilih apakah seluruh tabel akan diekspor atau ekspor dilakukan berdasarkan Query. Pilihan ketiga akan aktif bila Anda memilih database selain SQL Server sebagai output.

Gambar 4.33 Layar Specify Table Copy Or Query

 

Jika Anda menggunakan Query To Specify The Data To Transfer dan klik Next, maka akan muncul layar pernyataan SQL seperti gambar 4.34. Disini Anda dapat mengetikkan pernyataan Query yang menentukan data apa yang hendak Anda ekspor.

  1. Klik Next untuk menampilkan layar Select Destination File Format. (Layar ini tidak akan muncul jika anda mengakses layar ini dari layar Type SQL Statement)
  2. Setelah Anda klik Next pada layar Select Destination File Format, Anda akan menjumpai layar Save, Schedule, And Replicate Package yang mana adalah identik dan memiliki fungsi yang sama dengan layar yang sama pada Import Wizard. (lihat gambar 4.28)
  3. Klik Next untuk menampilkan layar Completing The DTS Import/Export Wizard dan klik Finish untuk impor.

Gambar 4.34 Layar Type SQL Statement

 

Gambar 4.35 Pilih File Format

 

Gambar 4.36 Layar Completing Export

 

  1. Setelah Anda klik Finish, Anda akan melihat layar Executing Package. Sebuah kotak pesan akan muncul menginformasikan pada Anda bahwa proses copy telah selesai atau terjadi kesalahan.

Gambar 4.37 Layar Executing Package – Export

 

4.9        Integrasi XML dengan SQL Server

 

Microsoft telah mengimplementasikan XML ke dalam SQL Server 2000 dan menyediakan alat bantu konfigurasi sederhana yang memungkinkan pengguna untuk mendapatkan akses ke basis data dengan Query melalui url dari HTTP. Misalnya kita dapat membuat sebuah direktori virtual untuk SQL XML pada web server kita dengan nama TestSQLXML. Anggap kita punya akses (memiliki otorisasi), maka kita dapat melakukan Query pada basis data kita dari browser menggunakan Query url sederhana seperti :

 

 

http://localhost/TestSQLXML?SQL=select+*+from+products+for+xml+auto

 

Jika dijalankan, maka hasilnya akan dikembalikan dalam bentuk recordset xml dan ditampilkan di browser.

 

SQL Server 2000 memiliki 3 metode untuk membentuk data kita. Antara lain sebagai berikut:

  1. “for xml auto”: Mengembalikan elemen XML yang bersarang, berdasarkan tabel yang diberikan pada bagian “FROM” dari Query, dan kolom-kolom yang diberikan pada bagian “SELECT”.
  2. “for xml raw”: Mengembalikan elemen XML dengan prefiks “row” (contoh: “<row tProduct …>“). Tiap kolom dalam tabel direpresentasikan sebagai sebuah atribut dan kolom yang bernilai NULL tidak diikutsertakan.
  3. “for xml explicit”: Mode ini merupakan metode yang paling rumit. Dengan Metode ini, Anda diizinkan untuk meng-Query sumber data dimana nama dan nilai dari XML yang dikembalikan ditentukan sebelum batch Query dijalankan.

 

Gambar 4.38 Definisi Tabel myProducts

   Langkah 1: Membuat Tabel

Buatlah basis data baru dengan nama ‘myProducts’. Lalu buatlah tabel seperti gambar 4.38. (Catatan: catId, productId dan descId adalah kolom identity yang sifatnya auto-increment)

Sebelum memulai, kita akan terlebih dahulu mengisi tabel–tabel tersebut, misalnya 3 entri untuk tabel Categories, 7 entri untuk Products dan 7 entri untuk Descriptions.

– Entry #1

INSERT INTO CATEGORIES(catName) VALUES (‘ASP’)

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Learning ASP in 24 hours version 1′)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘Learning ASP is a book designed to help readers familiar with HTML to start to learn the basic fundamentals of ASP.’)

 

– Entry #2

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘ASP and SQL 2000: The power to develop’)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘If you”re familiar with ASP and are looking to manipulate a database through script, then this is the book for you.’)

 

 

 

– Entry #3

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Beginners guide to eCommerce with ASP and XML’)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘eCommerce is dynamic, fun, flexible and profitable. Learn how to create award winning websites using ASP and XML in just 2 weeks.’)

 

– Entry #4

INSERT INTO CATEGORIES(catName)

VALUES (‘VB.NET’)

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Exploring VB.NET Beta 2′)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘With the recent release of VB.NET Beta 2, there are alot of changes, mainly those involving ADO.NET. Changes are vital and will help you to better understand the .NET framework’)

 

– Entry #5

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Creating scalable web services using VB.NET’)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

 

‘Web services are the new way to communicate cross server. Learning from Mike Johnson, you”ll be creating web services in no time!’)

 

– Entry #6

INSERT INTO CATEGORIES(catName)

VALUES (‘C#.NET’)

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Migrating from C++ to C#’)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘C++ is a powerful OOP language. C# is a powerful web based OOP language. Migration to C# for the web doesn”t have to be difficult. In this book John explains how, in just 30 days.’)

 

– Entry #7

SELECT @intId = @@identity

INSERT INTO PRODUCTS(productCat, productName)

VALUES (@intId, ‘Using C# and ADO.NET’)

SELECT @intId = @@identity

INSERT INTO DESCRIPTIONS(descProdId, descText)

VALUES (@intId,

‘Databases drive dynamic content. Using C# and ADO.NET, you too can develop fast, and tightly integrated database websites in just hours.’)

 

Langkah 2: Membuat stored procedure

Untuk mengambil data dalam format XML, kita akan mengkompresi batch Query kita ke dalam stored-procedure tunggal sehingga kita bisa menggunakannya berulang kali dan memudahkan pengembangan lebih lanjut.

 

USE myProducts
GO
CREATE PROC sp_GetExplicitXML
AS
SELECT 1 AS Tag, NULL AS Parent, c.catName as [Category!1!CatName],
NULL as [Product!2!ProdName], NULL as [Product!2!Description]
FROM categories c
UNION ALL
SELECT 2 AS Tag, 1 AS Parent, c.catName, p.productName, d.descText
FROM categories c, products p, descriptions d
WHERE c.catId = p.productCat AND p.productId = d.descProdId
ORDER BY [Category!1!CatName], [Product!2!ProdName]
FOR XML EXPLICIT

 

Langkah 3: Menampilkan Hasil

Untuk menampilkan hasil dari stored-procedure diatas pada browser, kita akan menulis script ASP script yang akan menjalankan stored procedure tersebut, mengisi datanya ke dalam obyek MSXML DomDocument, dan kemudian mentransformasi hasilnya menggunakan XSL stylesheet. Buatlah File ASP dengan nama prodtest.asp. Masukkan kode berikut:

<!– METADATA Type=”TypeLib” File=”c:\program Files\common
Files\system\ado\msado15.dll” –>
<%
dim objStream
dim objConn
dim objComm
dim objXML
set objStream = Server.CreateObject(“ADODB.Stream”)
set objConn = Server.CreateObject(“ADODB.Connection”)
set objComm = Server.CreateObject(“ADODB.Command”)
set objXML = Server.CreateObject(“MSXML2.DOMDocument”)
objConn.Open “Provider=SQLOLEDB; Data Source=(local); Initial
CataLog=myProducts; UId=sa; Pwd=”
objComm.ActiveConnection = objConn
objComm.CommandType = adCmdStoredProc
objComm.CommandText = “sp_GetExplicitXML”
objStream.Open
objComm.Properties(“Output Stream”).Value = objStream
objComm.Execute ,, adExecuteStream
objStream.Position = 0
objXML.LoadXML(“<?xml version=’1.0′?><?xml-stylesheet type=’text/xsl’
href=’prodtest.xsl’?><My_Products>” &
objStream.ReadText & “</My_Products>”)
if objXML.parseError.errorCode <> 0 then
Response.Write “Error loading XML: ” & objXML.parseError.reason
Response.End
end if
Response.ContentType = “text/xml”
Response.Write objXML.xml
%>

 

Jadi, kita menggunakan perintah ADO dan obyek Stream untuk menjalankan stored-procedure kita lalu membaca hasilnya ke dalam MSXML DOMDocument yang kemudian di-parsing. Jika tidak ada kesalahan, maka kita menulis XML tersebut ke dalam browser menggunakan stylesheet prodtest.xsl untuk mentransformasi data xml ke dalam format yang lebih mudah untuk dibaca.

 

<?xml version=”1.0″ ?>
<xsl:stylesheet xmlns:xsl=”http://www.w3.org/TR/WD-xsl”>
<xsl:template match=”/”>
<html>
<head>
<title> Sample Products </title>
</head>
<body>
<h1>Books in CataLog</h1>
<table border=”0″ cellspacing=”2″ cellpadding=”3″>
<xsl:for-each select=”My_Products/Category”>
<tr>
<td width=”100%” bgcolor=”#C0FFC0″>
<xsl:value-of select=”@CatName”/>
</td>
</tr>
<xsl:for-each select=”Product”>
<tr>
<td width=”100%” bgcolor=”#E9E9E9″>
<p style=”margin-left:30″><xsl:value-of select=”@ProdName”/></p>
</td>
</tr>
</xsl:for-each>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

 

 

 

Untuk menjalankannya copy file prodtest.asp dan prodtest.xsl ke direktori virtual web server (IIS) Anda.

 

Gambar 4.39 Hasil Eksekusi prodtest.asp di Browser

Sebelum memulai Anda terlebih dahulu harus mengkonfigurasi direktori virtual untuk SQL XML Anda. Ikuti langkah-langkah berikut.

  1. Bukalah konfigurasi Configure SQL XML dari menu Start (Start|Programs|SQL Administration|Configure SQL XML Supports in IIS)
  2. Buka Server Anda dan klik Default Web Site.
  3. Pada menu Action, pilih New dan klik Virtual Directory.
  4. Masukkan nama basis data anda (misalnya Pubs) ke dalam direktori virtual tersebut dan path fisik dari direktori tersebut. (C:\inetpub\wwwroot)
  5. Pilih tab Security. Disini Anda bisa memilih Login tunggal untuk semua pengguna direktori ini, mengizinkan Anda menggunakan Windows Integrated Authentication untuk mengakses SQL dengan account windows mereka, atau menggunakan Basic Clear, yang mengizinkan pengguna untuk menggunakan account Windows mereka tetapi informasi Login tidak dienkripsi.

 

 

Gambar 4.40 New Virtual Directory – Tab General

 

Gambar 4.41 New Virtual Directory – Tab Security

 

  1. Pilih tab Data Source. Disini Anda memberitahu IIS basis data mana yang dihubungkan ke direktori virtual. Masukkan nama Server Anda dan pilih basis data Anda.
  2. Pilih tab Settings. Disini Anda menentukan batasan Query yang dapat diproses menggunakan XML. Query melalui URL tidak direkomendasikan karena dapat digunakan untuk mengirim Query apapun ke dalam basis data, yang dapat menimbulkan pelanggaran keamanan (Security Breach). Query template direkomendasikan karena admin dapat menentukan kumpulan Query untuk digunakan. Pilihan ini membutuhkan pengetahuan pemrograman XML. Dan Xpath Query diperuntukkan bagi pengguna yang sudah mahir dengan XML. Query ini mengizinkan pengguna untuk mengakses SQL menggunakan bahasa Xpath.

 

Gambar 4.42 New Virtual Directory – Tab Data Source

 

  1. Pilih tab Virtual Names. Disini Anda mengasosiasikan skema Xpath atau template dengan direktori virtual untuk mambuat akses data lebih mudah bagi pengguna.

 

  1. Pada tab Advanced tab, leave the defaults. Settings ini digunakan untuk membuat perubahan terhadapa bagaimana IIS memproses Query.

 

  1. Klik OK untuk membuat direktori virtual.

 

 

Gambar 4.43 New Virtual Directory – Tab Settings

 

Gambar 4.43 New Virtual Directory – Tab Settings

 

BAB V

Sumber-sumber Yang Diperlukan Untuk

Pencapaian Kompetensi

 

5.1        Sumber Daya Manusia

Dalam proses pencapaian kompetensi sumber yang dapat diandalkan adalah sumber daya manusia. Sumber daya manusia yang dimaksud disiini adalah orang-orang yang dapat mendukung proses pencapaian kompetensi yang dimaksud, antara lain:

  • Pembimbing

Pembimbing Anda merupakan orang yang dapat diandalkan karena beliau memiliki pengalaman. Peran Pembimbing adalah untuk :

  1. Membantu Anda untuk merencanakan proses belajar.
  2. Membimbing Anda melalui tugas-tugas pelatihan yang dijelaskan dalam tahap belajar.
  3. Membantu Anda untuk memahami konsep dan praktik baru dan untuk menjawab pertanyaan Anda mengenai proses belajar Anda.
  4. Membantu Anda untuk menentukan dan mengakses sumber tambahan lain yang Anda perlukan untuk belajar Anda.
  5. Mengorganisir kegiatan belajar kelompok jika diperlukan.
  6. Merencanakan seorang ahli dari tempat kerja untuk membantu jika diperlukan.
  • Penilai

Penilai Anda melaksanakan program pelatihan terstruktur untuk penilaian di tempat kerja. Penilai akan :

  1. Melaksanakan penilaian apabila Anda telah siap dan merencanakan proses belajar dan penilaian selanjutnya dengan Anda.
  2. Menjelaskan kepada Anda mengenai bagian yang perlu untuk diperbaiki dan merundingkan rencana pelatihan selanjutnya dengan Anda.
  3. Mencatat pencapaian / perolehan Anda.
  • Teman kerja/sesama peserta pelatihan

Teman kerja Anda/sesama peserta pelatihan juga merupakan sumber dukungan dan bantuan. Anda juga dapat mendiskusikan proses belajar dengan mereka. Pendekatan ini akan menjadi suatu yang berharga dalam membangun semangat tim dalam lingkungan belajar/kerja Anda dan dapat meningkatkan pengalaman belajar Anda.

 

5.2        Literatur

Disamping dengan belajar dengan orang-orang seperti yang disebutkan diatas, Anda tentu perlu juga terus menambah wawasan dan pengetahuan

 

Anda dari sumber-sumber bacaan seperti buku-buku yang berkaitan dengan kompetensi yang Anda pilih, jurnal-jurnal, majalah, dan sebagainya.

 

Literatur dalam hal ini tentu bukan saja material berupa bacaan atau buku melainkan termasuk pula material-material lainnya yang menjadi pendukung proses pembelajaran ketika peserta pelatihan sedang menggunakan Pedoman Belajar ini. Misalnya rekaman dalam bentuk kaset, video, dan sebagainya.

 

Buku referensi, lembar kerja, tugas-tugas kerja juga dapat digunakan dalam proses pencapaian kompetensi. Peserta boleh mencari dan menggunakan sumber-sumber alternatif lain yang lebih baik atau sebagai pendukung tambahan atau jika ternyata sumber-sumber yang direkomendasikan dalam pedoman belajar ini tidak tersedia/tidak ada.

 

Untuk referensi mengenai materi-materi yang dapat digunakan, Anda dapat melihat dari Daftar Pustaka yang terlampir dihalaman terakhir modul ini.

 

5.3         Daftar Peralatan dan Bahan yang digunakan

Untuk menjalankan SQL Server 2000, pastikan Anda memiliki sistem komputer dengan spesifikasi minimal sebagai berikut:

 

Hardware

Minimum requirements

Computer Intel atau Pentium 166 MHz kompatibel atau yang lebih tinggi.
Memory (RAM) Enterprise Edition: min. 64 MB, 128 MB atau lebih akan lebih baik.
Standard Edition: min. 64 MB
Personal Edition: 128 MB untuk Windows XP, min. 64 MB pada Windows 2000, min 32 MB pada sistem operasi lain
Developer Edition: min. 64 MB
Desktop Engine: 128 MB untuk Windows XP, min. 64 MB pada Windows 2000, min 32 MB pada sistem operasi lain
Evaluation Edition: 64 MB; rekomendasi 128 MB.
Hard-drive space SQL Server database components: 95 – 270 MB kapasitas HDD untuk Server, 250 MB untuk instalasi typical
Analysis Services: min. 50 MB, 130 MB typical
English Query: 80 MB
Desktop Engine: 44 MB
Monitor VGA atau resolusi yang lebih tinggi

800×600 atau lebih tinggi untuk menggunakan antar muka grafis SQL Server

Pointing device Microsoft Mouse atau penunjuk lain yang kompatibel
CD-ROM drive Dibutuhkan untuk instalasi dari CD

 

 

 

 

SQL Server 2000 dapat diinstall dan dijalankan pada sistem operasi di bawah ini:

 

SQL Server Component

Version of Microsoft Windows Supported

Enterprise Edition Microsoft Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Server, Windows 2000 Advanced Server, or Windows 2000 Datacenter Server
Standard Edition Microsoft Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Server, Windows 2000 Advanced Server, or Windows 2000 Datacenter Server
Personal Edition Windows XP Home, Windows XP Professional, Microsoft Windows 98, Windows Me, Windows NT Workstation 4.0 Service Pack 5 or later, Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Professional, Windows 000 Server, Windows 2000 Advanced Server, or Windows 2000 Datacenter Server
Developer Edition Windows XP Home, Windows XP Professional, Microsoft Windows NT Workstation 4.0 Service Pack 5 or later, Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Professional, Windows 2000 Server, Windows 200 Advanced Server, or Windows 2000 Datacenter Server
Enterprise Evaluation Edition Windows XP Home, Windows XP Professional, Microsoft Windows NT Workstation 4.0 Service Pack 5 or later, Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Professional, Windows 2000 Server, Windows 200 Advanced Server, or Windows 2000 Datacenter Server
Desktop Engine Windows XP Home, Windows XP Professional, Windows 98, Windows Me, Windows NT Workstation 4.0 Service Pack 5 or later, Windows NT Server 4.0 Service Pack 5 or later, Windows NT Server 4.0 Enterprise Edition Service Pack 5 or later, Windows 2000 Professional, Windows 000 Server, Windows 2000 Advanced Server, or Windows 2000 Datacenter Server

DAFTAR PUSTAKA

 

  • Microsoft. SQL Server 2000 Books Online
  • Microsoft. SQL Server 2000 Knowledge Base Q257716
  • MSDN Training. Building XML-Enabled Applications using Microsoft SQL Server™ 2000. Microsoft Press.
  • Garcia, Marcilina S. (Frohock). Jamie Reding. Edward Whalen. Steve Adrien DeLuca. Microsoft SQL Server 2000 Administrator’s Companion. Microsoft Press. (2000)
  • SQL Server 2000 in Microsoft Development Network (MSDN)
  • Shepkew, Matthew. Writing Stored Procedures for Microsoft SQL Server. Sams Publishing. (2000)
  • Mortensen, Lance. Rick Sawtell. Joseph L. Jorden. MSCE: SQL Server 2000 Administration. Sybex Inc. Alameda, CA. (2001)
  • Website:
    • http://www.sqlmag.com/
    • http://www.w3schools.com/
    • http://msdn.microsoft.com/

Testimoni

artikel lainnya Membuat Program Basis Data Berbasis Microsoft (SQL SERVER) TIK.PR08.006.01

Monday 27 April 2015 | blog

  MATERI PELATIHAN BERBASIS KOMPETENSI SEKTOR TELEMATIKA SUB SEKTOR PROGRAMMER KOMPUTER     MENULIS PROGRAM DASAR…

Thursday 4 December 2014 | blog

            PELATIHAN BERBASIS KOMPETENSI JURU SURAT LEVEL I      …

Sunday 18 October 2015 | blog

BELAJAR CEPAT, BIAYA HEMAT , HANYA DI BINTANG PRIVAT Jl. Urip Sumoharjo Sragen CP : Bp.…

Sunday 21 June 2015 | blog

SILABUS Nama Sekolah : SMA WARGA Surakarta Mata Pelajaran : BASA JAWA Kelas/Semester : XII/GASAL Standar…