Monday, 16 August 2021

Artiker Tentang Desain Web Statis Dan HTML

 

DESAIN WEB STATIS DAN HTML

Jika kita sering berselancar di dunia internet kita akan sering menjumpai halaman [1] halaman web seperti pada Gambar 13.1. di samping ini. Halaman web ini ada yang bersifat statis tetapi juga ada yang dinamis. Tetapi apapun sifatnya, halaman-halaman tersebut hampir pasti melibatkan bahasa HTML. Bab ini membahas dua standar kompetensi yaitu menerapkan dasar [1]dasar pembuatan web statis tingkat dasar dan membuat file HTML sesuai spesifikasi. Penggabungan dua kompetensi ini karena kedekatannya dengan kompetensi dasar. Standar kompetensi membuat file HTML sesuai spesifikasi terdiri dari empat kopetensi dasar yaitu menetapkan penggunaan struktur file, membuat struktur file HTML, memformat file dan menambahkan obyek. Standar kompetensi menerapkan dasar-dasar pembuatan web statis tingkat dasar juga terdiri dari empat kompetensi dasar yaitu menjelaskan konsep dasar dan teknologi web, mempersiapkan pembuatan web, melakukan pembuatan web, dan menampilkan web di browser.

Rangkuman diletakkan pada akhir bab dilanjutkan dengan soal-soal latihan yang disusun dari soal-soal yang mudah hingga soal-soal yang sulit. Latihan soal ini digunakan untuk mengukur kemampuan terhadap kompetensi dasar ini. Sebelum mempelajari kompetensi ini mengumpulkanlah kembali dasar sistem komputer, sistem operasi, dan algoritma pemrograman dasar.

13.1. WEB KONSEP DASAR DAN TEKNOLOGI

World Wide Web secara luas lebih dikenal dengan istilah Web. Web pertama kali diperkenalkan pada tahun 1992. Hal ini sebagai hasil usaha pengembangan yang dilakukan CERN di Swiss. Internet dan web adalah dua hal yang berbeda. Internet lebih merupakan perangkat keras, sedangkan web adalah perangkat lunak. Selain itu, protokol yang dipakai oleh keduanya juga berbeda. Internet menggunakan TCP/IP sebagai protokol operasionalnya, sedangkan web menggunakan HTTP (Hyper Text Transfer Protocol). Web disusun dari halaman-halaman yang menggunakan teknologi web dan saling berkaitan satu sama lain. Suatu standar teknologi web saat ini sudah tersusun, meskipun penerapannya belum didukung oleh seluruh pengembang web. Standar ini disusun oleh suatu badan yaitu World Wide Web Consortium (W3C).

13.1.1 Standar Teknologi Web

Secara umum teknologi disain web terbagi menjadi beberapa layer (lapisan), yaitu structural layer, presentation layer dan behavioral layer.

·         Lapisan struktural

Layer ini berhubungan dengan struktur dokumen dokumen web. Bagaimana sebuah dokumen yang tersusun, format apa yang dipakai, tanda atau mark up apa yang digunakan merupakan bagian dari layer ini. Standar teknologi yang pasti saat ini adalah Extensible Hypertext Markup Language (XHTML) dan Extensible Markup Language (XML). XHTML adalah HTML versi terakhir (4.01) yang ditulis ulang dengan aturan-aturan yang lebih ketat mengacu pada XML. Sedangkan XML adalah aturan untuk menyusun bahasa markup.

·         Lapisan penyajian

Layer ini berhubungan dengan bagaimana mengatur tampilan dokumen pada layar, suara yang keluar, atau bagaimana format pencetakan dokumen. Pada teknologi web lama bagian ini menyatu dengan lapisan struktur. Tapi pada standar baru, rekomendasi ini disarankan untuk dipisah. Yang termasuk teknologi ini adalah Cascading Style Sheets (CSS).

·         Lapisan perilaku

Layer ini berhubungan dengan masalah penggunaan bahasa skrip dan pemrogramannya untuk tujuan meningkatkan sisi interaktif dan dinamis halaman web. Yang termasuk dalam layer ini adalah Document Object Model (DOM) dan JavaScript. DOM mendukung suatu dokumen atau skrip untuk mengakses atau meng-update isi, struktur, dan gaya dari dokumen. JavaScript merupakan teknologi yang cukup lama dan tetap digunakan untuk menambah dokumen menjadi lebih interaktif.

13.1.2.Web Statistik dan Web Dinamis.

Halaman web dapat digolongkan menjadi web statis dan web dinamis. Pengertian web statis dan web dinamis sering diundangkan. sebagian pengguna internet menyatakan jika pada halaman-halaman web dilengkapi dengan animasi yang bergerak maka disebut web dinamis sedangkan jika halaman-halaman web tersebut hanya berisi teks dan gambar yang tidak bergerak maka disebut web statis. Namun berdasarkan kesepakatan maka pengertian statis dan dinamis tidak ditentukan oleh ada atau tidaknya animasi bergerak pada halaman-halaman web, tetapi ditentukan oleh isi atau informasi yang ada pada halaman-halaman tersebut. Data dan informasi yang ada pada web statis tidak berubah-ubah. Dokumen web yang dikirim kepada klien akan sama isinya dengan apa yang ada di server web. Sedangkan web dinamis, memiliki data dan informasi yang berbeda-beda tergantung input apa yang disampaikan klien. Dokumen yang sampai di client akan berbeda dengan dokumen yang ada di web server. Contoh paling mudah untuk membedakan web statis dan web dinamis adalah bila kalian membuka situs Google. Halaman awal adalah statistik karena kita tidak melihat perubahan isi atau informasi. Halaman ini baik di komputer client maupun di web server akan sama. Namun begitu kita memasukkan kata pada textbox yang tersedia kemudian menekan tombol search maka kita berinteraksi dengan server web Google. Server web akan mengirimkan halaman web sesuai yang diminta oleh klien. Tampilan di sisi client akan berupa daftar alamat dan keterangannya. Sedangkan di sisi server isi dokumennya adalah serangkain kode-kode untuk mencari apa yang diinputkan client.

13.2. WEB PERSIAPAN PEMBUATAN

Pembuatan halaman web membutuhkan persiapan tidak hanya pengetahuan tentang bagaimana cara menghapus halaman web, namun juga perlu dukungan persiapan perangkat keras, perangkat lunak, dan yang lainnya.

13.2.2.Perangkat Keras

Perangkat keras yang dibutuhkan untuk pembuatan halaman web tidak berbeda jauh dengan kebutuhan komputasi biasa. Seperangkat komputer lengkap dengan CPU, monitor, keyboard, mouse, printer dan beberapa perangkat tambahan lain sudah dapat digunakan untuk membuat halaman web. spesifikasi tergantung dari perangkat lunak yang akan diinstal pada perangkat komputer tersebut. Jika kita menginstal web server, pengolah gambar untuk disain halaman web, editor HTML yang komplet, tentu kita membutuhkan spesifikasi yang lebih tinggi.

13.2.3.Perangkat Lunak

·         Sistem operasi

Sistem operasi memegang peranan penting dalam pembuatan web karena pada sistem operasi itu akan ditanamkan (diinstal) server web, editor web, sistem manajemen basis data dan bahasa pemrograman. Artinya pilihan pada sistem operasi tertentu akan menentukan pula pilihan server web, perangkat pengembang dan pemrograman bahasa yang akan digunakan. Hal ini dikarenakan adanya masalah antar perangkat lunak. Sebagai contoh, jika kita memilih menggunakan sistem operasi Linux maka kita tidak dapat menginstal IIS sebagai server web. Selain masalah, hal lain yang juga perlu dipertimbangkan dalam menentukan sistem operasi yang akan kita gunakan pada server adalah masalah keamanan, kesulitan menentukan. Keamanan berhubungan dengan kemampuan sistem operasi untuk melindungi diri dari serangan virus, spam, atau kode-kode jahat yang sengaja disusupkan. Kemampuan ini sangat penting diperhatikan karena lalu lintas data dalam internet sangat rentan terhadap gangguan virus, spam, dan pengganggu lainnya. Stabilitas berhubungan dengan kemampuan sistem operasi untuk bekerja terus-menerus untuk merespon permintaan klien. Kemudahan konfigurasi mudah tidaknyadilakukan terhadap sistem operasi dalam memanfaatkan sebagai server.

 ·         Web Server

Server web adalah perangkat lunak yang bertindak melayani permintaan [1] permintaan klien pada halaman-halaman web tertentu. Ada beberapa nama yang cukup populer di web server dunia. Diantaranya adalah Apache dan IIS (Internet Information Service). Sampai dengan Desember

2007, wikipedia mencatat Apache dalam posisi pertama sebagai server web yang paling banyak digunakan, disimpan IIS. Apache dapat digunakan baik untuk web statis maupun web dinamis dan mendukung banyak sistem operasi platform dan server bahasa pemrograman, antara lain Perl, Phyton, Java (JSP dengan menggunakan Tomcat) dan tentu saja PHP. Fungsi-fungsi keamanan web juga dikendalikan dengan sangat baik. Dukungan pada koneksi dengan berbagai basis data, seperti MySQL, SQL Lite, PosgreSQL, Oracle, DB2 dan lain-lain dapat dilakukan dengan baik. Gambar 13.2 menunjukkan bagaimana web server Apache (httpd) digunakan di Linux.

IIS adalah server web keluaran Microsoft. Sebutan web server bagi IIS mungkin tidak terlalu tepat, karena selain web server, IIS juga memberikan fasilitas file server, email server dan layanan lain berbasis internet. Oleh karena itu istilah yang tepat mungkin adalah layanan berbasis internet. Perangkat lunak ini dibundel dalam sistem operasi Microsoft Windows. Namun secara default tidak langsung diinstall. Sehingga kalau kita mau menggunakannya kita harus menginstall lebih dulu. Gambar 13.3 menunjukkan bagaimana IIS diinstall.

·         Penyunting Web / HTML

WWeb / HTML Editor adalah perangkat lunak yang digunakan untuk membuat halaman web, baik yang bersifat statis maupun dinamis. Di pasar perangkat lunak, saat ini tersedia banyak sekali jenis perangkat pengembang web, mulai dari yang sederhana sampai yang canggih dan kompleks. Namun sebenarnya untuk membuat halaman web baik statis maupun dinamis kita dapat menggunakan editor teks biasa seperti Notepad atau Vi. Hanya saja editor teks tidak menyediakan fasilitas-fasilitas yang memudahkan kita dalam membuat halaman web. Pada perangkat pengembang web yang lebih kompleks seperti Adobe

Dreamweaver (dulu Macromedia Dreamweaver), Microsoft Visual Studio .Net, kita akan melihat fasilitas yang sangat membantu membantu pembuatan halaman web, antara lain: tampilan berbasis GUI, penyelesaian kode secara otomatis, WYSIWYG (What You See Is What You) Get) HTML Editor, koneksi ke basis data yang lebih mudah, dan banyak lagi fasilitas. Tentu saja perangkat pengembang ini berharga relatif mahal. Pada bagian lain dari bab ini Anda akan diajak untuk mengenali beberapa perangkat lunak ini.

 Web Peramban

Web browser berfungsi menerjemahkan kode-kode HTML menjadi tampilan yang kita kehendaki. Ada banyak Web Browser yang tersedia di internet. Hampir semuanya dapat kita unduh secara bebas. Beberapa nama yang cukup terkenal antara lain Microsoft Internet Explorer, Firefox, Opera atau Safari. Microsoft Internet Explorer adalah web browser default pada sistem operasi Microsoft Windows (lihat Gambar 13.4). Firefox adalah browser web default pada sebagian besar sistem operasi Linux. Safari adalah web browser default pada sistem operasi Mac OS X (lihat Gambar 13.5). Sedangkan Opera adalah web browser keluaran Opera Software yang dapat berjalan pada berbagai platform sistem operasi (Gambar 13.6).

13.3. MEMBUAT DAN MENGUJI HALAMAN WEB

Ada dua model dalam pembuatan halaman web statis. Yang pertama adalah membuat halaman-halaman tersebut di komputer lokal, kemudian setelah dipindahkan ke lokasi di server web. Model kedua adalah langsung membuat halaman-halaman web di lokasi web server. Server web dapat berada di satu komputer yang sama dengan tempat halaman web atau di komputer lain yang berperan sebagai server. Cara pertama lebih mudah dilakukan karena tidak membutuhkan kerja server web di tahap disain. Pada bagian ini kita akan mencoba cara ini. Buatlah direktori pada komputer kalian. Jika kalian menggunakan sistem operasi Windows, kalian tinggal buka Windows Explorer kemudian klik kanan pada area Windows eksplorer dan pilih New kemudian pilih Folder. Beri nama misalkan LatihanWeb. Jika Anda menggunakan Linux, buka file manager yang tersedia misalnya Konqueror, Nautilus, atau Thunar. lakukan cara yang sama seperti pada Windows Explorer. Umumnya suatu situs web tidak hanya berisi satu halaman web tetapi kumpulan dari beberapa halaman web yang saling berhubungan. Biasanya pengembang web membuat direktori untuk mempermudah pengaturan halaman. Perhatikan struktur direktori sebuah situs web pada Gambar 13.7.

Halaman awal suatu situs web biasanya berupa halaman web yang diberi nama homepage. Biasanya filenya diberi nama index.html (atau bisa juga index.php, index.jsp, index.asp jika menggunakan server skrip bahasa). Di dalam direktori yang sama dengan index.html ini biasanya ada direktori-direktori lain yang berisi halaman-halaman yang berdasarkan pendekatan atau pengelompokkan lain. Selain itu ada direktori lain yang digunakan untuk menyimpan elemen-elemen yang digunakan dalam halaman web. biasanya berisi file-file gambar, teks, audio, video atau elemen-elemen yang lain. Buat direktori seperti di atas dengan cara menambahkan sub direktori di bawah direktori LatihanWeb yang telah kalian buat. Beri nama sesuai keinginan Anda, usahakan nama direktori menunjukkan apa isi dari direktori tersebut.

13.4. HTML

13.4.1.Pengertian HTML

Gambar 13.8 dan 13.9 menunjukkan pada kalian bagaimana membuat halaman web sederhana. Halaman web yang kalian buat ini menggunakan bahasa yang disebut HTML (Hypertext Markup Language). HTML merupakan pengembangan dari standar pemformatan dokumen teks yaitu Standard Generalized Markup Language (SGML). HTML sebenarnya adalah dokumen ASCII atau teks biasa yang dirancang untuk tidak tergantung pada suatu sistem operasi tertentu. HTML dibuat oleh Tim Barners-Lee ketika masih bekerja untuk CERN. HTML dipopulerkan pertama kali oleh browser Mosaic. Selama awal tahun 90'an, HTML mengalami perkembangan yang sangat pesat. Setiap pengembangan HTML pasti akan menambahkan kemampuan dan fasilitas yang lebih baik dari versi sebelumnya. Perkembangan yang pesat tersebut tidak sampai mengubah cara kerja HTML. Sebuah dokumen atau file HTML agar dapat dibaca langsung oleh browser disimpan dalam ekstensi .htm atau .html. Untuk menulis HTML tidak dibutuhkan perangkat lunak yang spesifik, cukup dengan editor teks sederhana seperti Notepad (pada Microsoft Windows) atau beragam editor teks yang ada di platform Linux dan Apple Mac OS, seperti vi, nano, joe, gedit, leafpad dan lain-lain[1] lain. Beberapa editor menyediakan fitur-fitur tambahan seperti pewarnaan sintaks (memberi warna pada kode-kode HTML) dan penyelesaian kode (dilengkapi secara otomatis kode yang akan dituliskan). Saat ini telah banyak perangkat lunak berbasis GUI yang sangat membantu dalam pembuatan halaman-halaman HTML. Macromedia Dreamweaver dan Microsoft Frontpage merupakan dua nama yang cukup populer di platform Microsoft Windows. Sedangkan di Linux tersedia Quanta+, Bluefish dan Nvu.

13.4.2.Struktur Umum File dengan Bahasa HTML

HTML adalah bahasa yang disisipkan (embedded language) pada dokumen dengan memberi tanda tertentu yang disebut tag. Tag merupakan aturan penulisan kode yang ditulis dengan diawali tanda lebih kecil dan di akhiri dengan tanda lebih besar (). Browser akan menentukan tampilan teks atau dokumen berdasarkan tag yang digunakan.

Sintaks penulisan tag mengikuti aturan-aturan umum berikut ini:

Dokumen HTML secara umum akan terdiri dari dua bagian yaitu Header dan Body (Gambar 13.14)

·        Header

Bagian ini biasanya berisi berbagai macam keterangan tentang dokumen termasuk title (judul dokumen), posisinya dalam sekumpulan halaman web dan hubungannya dengan dokumen lain. Bagian ini ditandai dengan tag …. . Tag ini tidak mempunyai atribut. Di dalam tag ini kita dapat meletakkan beberapa tag lain seperti tag title dan tag link. Lihat Gambar 13.15 dan 13.16.

·        Body

Body adalah bagian dari dokumen HTML tempat dimana kita meletakkan isi dari dokumen. Bagian ini ditandai dengan tag

dan diakhiri dengan

Apapun yang berada diantara dua tanda ini disebut sebagai body content. Dokumen HTML yang paling sederhana mungkin hanya berisi sebaris atau dua baris teks saja tanpa format apapun (Gambar 13.17). Pada dokumen yang lebih kompleks, body content bisa berisi teks yang terformat, gambar, tabel atau bahkan animasi yang rumit (Gambar 13.18).

13.4.3.Format Dokumen

Ada banyak sekali tag HTML yang tersedia, baik itu berhubungan dengan deskripsi dokumen atau yang berhubungan dengan format tampilan dokumen. Tidak semuanya akan dibahas dalam buku ini. Pada bagian berikut ini akan dibahas beberapa tag yang biasa dipakai dalam format tampilan dokumen.

























































































Friday, 13 August 2021

BASIS DATA BERBASIS SQL LENGKAP

 BASIS DATA BERBASIS SQL


Gambar 12.1 di samping ini adalah gambar sekumpulan komputer server yang biasanya ada pada perusahaan penyedia jasa internet atau pada bagian teknologi informasi perusahaan-perusahaan besar. Salah satu fungsi peralatan ini adalah sebagai pusat data yang dibutuhkan penggunanya. Peran sebagai pusat data ini membutuhkan DBMS dan aplikasi basis data yang kuat. Perangkat DBMS seperti Microsoft SQL Server, Oracle, MySQL, PostgreSQL biasanya menjadi pilihan. Fungsi-fungsi lanjut yang disediakan oleh DBMS tersebut sangat membantu kecepatan kerja, keamanan, dan keakuratan data yang disampaikan.

tiga standar kompetensi yaitu melakukan pemrograman data deskripsi (SQL) tingkat dasar, mengoperasikan bahasa pemrograman data deskripsi (SQL) tingkat lanjut dan membuat program basis data dengan Microsoft SQL Server. Kedua standar kompetensi ini disatukan karena kedekatan materi bahasan. Susunan sub bab tidak langsung mengacu pada kompetensi dasar, tapi lebih pada kecocokan materi. Ringkasan akan disampaikan di akhir bab kemudian dilanjutkan dengan soal-soal latihan. Sebelum kalian mempelajari bab ini buka kembali bab-bab tentang pemecahan masalah, sistem operasi, algoritma lanjutan, dasar-dasar basis data, dan aplikasi basis data berbasis Microsoft Access pada bab-bab sebelumnya.

12.1. SEKILAS TENTANG SQL

          Dalam DBMS biasanya tersedia paket bahasa yang digunakan untuk mengorganisasi basis data yang ada, yaitu Data Definition Language (DDL) dan Data Manipulation Language (DML).

12.1.1. Data Definition Language (DDL)

Data Definition Language (DDL) adalah satu paket bahasa DBMS yang berguna untuk melakukan spesifikasi terhadap skema basis data. Hasil kompilasi dari DDL adalah satu set tabel yang disimpan dalam file khusus yang disebut Data Directory/Dictionary. Secara umum perintah perintah dalam DDL berhubungan dengan operasi-operasi dasar seperti membuat basis data baru, menghapus basis data, membuat tabel baru, menghapus tabel, membuat indeks, mengubah struktur tabel. Contoh perintah DDL misalnya, Create Table, Create Index, Alter, dan Drop Database.

12.1.2. Data Manipulation Language

Data Manipulation Language (DML) adalah satu paket DBMS yang memperbolehkan pemakai untuk mengakses atau memanipulasi data sebagaimana yang telah diorganisasikan sebelumnya dalam model data yang tepat. Dengan DML dapat dilakukan kegiatan :

Terdapat dua tipe DML yaitu prosedural dan non prosedural. Prosedural DML membutuhkan pemakai untuk menspesifikasikan data apa yang dibutuhkan dan bagaimana cara mendapatkannya, sedang non prosedural DML membutuhkan pemakai untuk menspesifikasikan data apa yang dibutuhkan tanpa tahu bagaimana cara mendapatkannya.

SQL merupakan kependekan dari Structured Query Language (Bahasa Query Terstruktur). SQL lebih dekat dengan DML dari pada DDL. Namun tidak berarti SQL tidak menyediakan perintah DDL. SQL lebih menekankan pada aspek pencarian dari dalam tabel. Aspek pencarian ini sedemikian penting karena di sinilah sebenarnya inti dari segala upaya kita melakukan pengelolaan data. Data dalam basis data diorganisasi sedemikian rupa dengan tujuan untuk memudahkan pencarian di kemudian hari.

Sebagai sebuah bahasa, SQL telah distandarisasi dan mengalami beberapa perubahan atau penyempurnaan. SQL muncul pertama kali pada tahun 1970 dengan nama Sequel (nama yang masih sering digunakan hingga saat ini). Standarisasi yang pertama dibuat pada tahun 1986 oleh ANSI (American National Standards Institute) dan ISO (International Standard Organization), yang disebut SQL-86. Pada tahun 1989 SQL-86 diperbaharui menjadi SQL-89. Standar terakhir yang dibuat adalah SQL-92. 

Pernyataan-pernyataan SQL digunakan untuk melakukan beberapa tugas seperti : update data pada basis data, atau menampilkan data dari basis data. Beberapa software RDBMS yang dapat menggunakan SQL, seperti : Oracle, Sybase, Microsoft SQL Server, MySQL, Microsoft Access, Ingres, dsb. Setiap software basis data mempunyai mungkin bahasa perintah / sintaks yang berbeda, namun pada prinsipnya mempunyai arti dan fungsi yang sama. 

Perintah utama dalam SQL adalah select. Struktur utama perintah adalah

sebagai berikut:

Kita akan menggunakan perintah-perintah ini pada bagian-bagian berikut.

12.2. MEMPERSIAPKAN PERANGKAT LUNAK BERBASIS SQL

Seperti disebutkan di bagian awal bab, perangkat lunak yang akan kita gunakan adalan Microsoft SQL Server. Pada kesempatan ini versi yang dipakai adalah versi 2005 Developer Edition. Penjelasan sekilas tentang Microsoft SQL Server dapat dilihat pada bab 10.

12.2.1. Kebutuhan Operasi

Microsoft SQL Server adalah perangkat lunak yang berjalan pada platform Microsoft Windows, sehingga kebutuhan utama dari perangkat lunak ini adalah tersedianya komputer yang telah terinstal sistem operasi Windows, terutama versi Server. Hal ini karena Windows versi Server memberikan integrasi yang lebih baik. Selain itu dari sisi keamanan dan alokasi kerja model client-server, versi server memberikan unjuk kerja yang lebih baik.

Microsoft SQL Server adalah perangkat lunak yang harus diaktifkan sebagai service pada Windows. Jika belum dijalankan maka kita tidak akan dapat menggunakannya. Default-nya, ketika Microsoft SQL Server diinstal maka secara otomatis, service ini akan dibuat dan dijalankan setiap kali Windows

dihidupkan. Namun untuk memastikan kalian dapat memeriksanya dengan membuka Control Panel, kemudian pilih Administrative Tool. Pada jendela Administrative Tool (Gambar 12.2) klik ganda pada ikon Service sehingga terbuka jendela seperti pada Gambar 12.3.



Pada jendela Service carilah nama service SQL Server kemudian periksalah di kolom status, apakah sudah started atau belum. Jika belum jalankan (start) service ini.

12.2.2. Menjalankan Perangkat Lunak Basis Data Berbasis SQL

Setelah terinstal maka kita dapat menggunakan Microsoft SQL Server dengan memanggil GUI client dari Microsoft SQL Server yang disebut sebagai SQL Server Management Studio. Ketika pertama kali dipanggil maka tampilan akan tampak seperti pada Gambar 12.4.

Setiap kali kita membuka SQL Server Management Studio, kita akan diperiksa apakah kita berhak menggunakan SQL Server atau tidak. Jika SQL Server dijalankan pada mesin lokal dan menggunakan Windows Authentication maka kita dapat langsung menekan tombol Connect untuk masuk ke lingkungan SQL Server. Tetapi bila SQL Server dijalankan dari komputer lain (server) kita akan diminta memasukkan user name dan password yang telah didaftarkan.

Ada informasi penting dari Gambar 12.4 di atas yang kalian perlu ketahui. Pada gambar tersebut terlihat bahwa kita akan mengakses tipe server Database Engine, yaitu server yang berhubungan dengan masalah aplikasi basis data. SQL Server menyediakan beberapa tipe server yang dapat diakses. Namun tidak dijelaskan pada buku ini. Selain itu nama server yang akan diakses adalah ARM[1]BLACKMATE. Hal ini karena SQL Server diinstal pada komputer dengan nama ARM-BLACKMATE sehingga kita perlu nama server sama dengan nama dimana SQL Server berjalan.

12.3. MENU / FITUR UTAMA

Setelah kita berhasil masuk ke dalam lingkungan SQL Server maka kita akan disuguhi tampilan awal dari SQL Server Management Studio seperti pada Gambar 12.5.


Ada dua bagian penting yang ada pada bagian awal ini yaitu Object Explorer dan Summary Panel. Object Explorer adalah tempat kita melihat obyek[1]obyek apa saja yang ada di dalam SQL Server. Pada gambar di atas kalian bisa melihat obyek-obyek yang tersedia. Untuk sementara yang paling penting adalah Databases. Sedangkan Summary panel merupakan tempat keterangan

atau ringkasan yang ada pada Object Explorer. Coba klik pada salah satu obyek di Object Explorer, maka isi Summary panel juga akan berubah sesuai dengan obyek yang kita pilih.

Kita akan fokus pada obyek Databases. Coba klik tanda + (atau tanda node) di depan obyek Databases, sehingga akan tampak tampilan seperti pada Gambar 12.6 di samping ini. Pada Gambar tersebut tampak ada empat basis data yang sudah ada pada SQL Server, yaitu AdventureWorks, AdventureWorksDW, latihan01SQL dan Northwind2007SQL. Keempat basis data ini termasuk user object karena merupakan buatan pengguna. SQL Server juga membuat sendiri basis data ketika proses instalasi berlangsung. Basis data ini biasa disebut sebagai system object. Biasanya ada beberapa system object yang tersedia yaitu Master, Model, MSDB, Resource, TempDB, dan Distribution. Basis data ini tidak boleh dihapus karena akan membuat sistem menjadi tidak bekerja normal. Untuk memeriksanya, coba klik node di depan System Database.

Sementara ini kita tidak akan berhubungan dengan System Databases. Kita akan melihat pada user object. Klik pada salah satu basis data maka tampilan pada Summary Panel akan berubah. Perhatikan Gambar 12.7. Pada gambar tersebut tampak bahwa basis data AdventureWorks berisi berbagai komponen antara lain Database Diagrams, Tables, Views dan yang lainnya. Setiap basis data yang kita buat di SQL server akan punya komponen-komponen ini secara default. Meskipun kita tidak membuat Database Diagrams misalnya, komponen Database Diagrams tetap disediakan.



12.4. PEMBUATAN DAN PENGISIAN TABEL

12.4.1. Pembuatan Basis Data

Sebelum kita membuat tabel, kita harus membuat lebih dahulu basis datanya. Untuk membuat basis data baru, klik kanan pada Databases dan pilih New Database. Jendela untuk membuat basis data baru akan terbuka (Gambar 12.8). Pada textbox di depan Database name, ketikkan nama basis data yang akan dibuat. Pada contoh ini namanya adalah Lat-01. Kemudian klik OK. Perhatikan pada Object Explorer, basis data baru sudah terbentuk dan memiliki komponen-komponen yang sama dengan basis data lainnya.

12.4.2. Pembuatan Tabel

Setelah basis data terbentuk kita baru bisa membuat tabel. Klik kanan pada komponen Tables di basis data Lat-01 dan pilih New Table… Bagian Summary panel akan berubah menjadi seperti pada Gambar 12.9. Kalian bisa mulai memasukkan atribut atau kolom dari tabel yang akan dibuat. Pembuatan tabel ini sama persis dengan apa yang telah kalian lakukan dengan Microsoft Access. Penentuan tipe data, lebar data dan primary key juga tidak jauh berbeda. Yang agak berbeda adalah SQL Server menyediakan tipe data yang lebih banyak daripada Microsoft Access. Untuk menentukan primary key, pilih atribut kemudian tekan tanda kunci pada toolbar

Pada gambar di atas, kita membuat tabel dengan 5 kolom yaitu NoInduk, Nama, Alamat, Kota, NoTelepon. Masing-masing bertipe nchar dengan lebar data yang bervariasi. Untuk menentukan lebar data, lihatlah pada bagian property dari kolom. Setelah selesai simpan tabel dengan nama tertentu. Pada contoh di atas tabel disimpan dengan nama siswa. SQL server akan memberikan awalan nama (prefix) dbo secara default. Tetapi ini bisa kita rubah. Jadi nama tabel yang kita buat di atas akan menjadi dbo.siswa.

Hapuslah tabel dbo.siswa dengan cara klik kanan lalu pilih Delete. Sekarang buatlah tabel-tabel berikut ini dengan cara seperti di atas.

12.4.3.Pengisian Data pada Tabel

Setelah semua tabel terbentuk, kita dapat mengisi tabel dengan data-data yang kita inginkan. Dengan menggunakan GUI SQL Server Management Studio kita dapat mengisi data seperti halnya pada Access. Klik kanan pada nama tabel kemudian pilih Open Table. Jendela baru pada Summary panel akan terbuka dan siap untuk diisi datanya. Gambar 12.10 menunjukkan bagaimana kita mengisi data pada sebuah tabel. Setiap kali kalian mengisi untuk satu baris harus diikuti dengan menekan Enter. Jika tidak maka data tidak tersimpan. Cobalah isi tabel-tabel yang lain.

12.5. OPERASI PADA TABEL DAN VIEW

12.5.1. Relasi Antar Tabel

Tabel-tabel yang telah kalian buat dan isi di atas masih merupakan tabel yang berdiri sendiri tidak ada hubungan antar tabel. Padahal kalau dilihat dari tabel-tabel yang ada kita bisa membuat model hubungannya (lihat bab 10 dan 11 tentang relasi antar tabel). Tabel siswa berhubungan dengan tabel program, tabel guru berhubungan dengan tabel bidang dan tabel program. Untuk membuat hubungan antar tabel ini kita bisa menggunakan komponen Database Diagrams. Klik kanan pada Database Diagrams kemudian pilih New Database Diagram. Jendela baru akan terbuka seperti tampak pada Gambar 12.11.

Pada jendela Add Table klik Add untuk memilih tabel yang akan kita relasikan. Pada contoh ini kita akan pilih semua tabel karena semua saling terkait. Klik Add beberapa kali sampai tidak ada nama tabel di jendela Add Table. Setelah semua tabel terpilih buat relasi seperti tampak pada Gambar 12.12. Cara menghubungkan tabel satu dengan tabel yang lain sama persis dengan yang kita lakukan di Microsoft Access. Simpan diagram ini.

12.5.2. Membuat View

View sama dengan Query pada Microsoft Access. SQL Server juga menyediakan fitur GUI untuk membuat View seperti halnya GUI Query pada Microsoft Access. Untuk membuat View, klik kanan pada View kemudian pilih New View sehingga jendela seperti Gambar 12.13 terbuka. Pilih Add Table untuk menambahkan satu atau lebih tabel yang akan kita buat View-nya. Misalnya kita pilih tabel siswa. Klik Close untuk menutup jendela tersebut. Sehingga akan muncul tampilan seperti tampak pada Gambar 12.14.

Ada empat bagian penting pada Gambar 12.14 yaitu jendela Diagram, jendela Criteria, jendela SQL dan jendela Result. Jendela Diagram digunakan sebagai tempat tabel-tabel sumber yang akan kita buat View-nya. Jendela Criteria adalah tempat kita menentukan kriteria-kriteria pada View. Jendela SQL adalah tempat menuliskan perintah SQL dari View yang kita buat. Jendela Result adalah tempat untuk menampilkan hasil dari View



Pada Gambar 12.14, kita telah memilih tabel Siswa sebagai sumber View dan muncul pada jendela Diagrams. Kita akan membuat View sederhana berdasarkan tabel ini. Klik *(All Columns) di bawah nama tabel Siswa. Isi jendela SQL otomatis akan berubah. Isi jendela SQL akan berubah sesuai dengan apa yang kalian lakukan pada jendela Diagram dan jendela Criteria. Kemudian klik tanda seru (!) pada toolbar untuk mengeksekusi View tersebut atau klik kanan di salah satu bagian pada Gambar 12.14 (boleh di jendela Diagram/Criteria/SQL/Result) kemudian pilih Execute SQL. Kalian akan memperoleh tampilan seperti pada Gambar 12.15. Simpan View ini dengan cara klik pada ikon Disket pada Toolbar kemudian masukkan nama View.


Kalau kalian perhatikan, langkah-langkah membuat View di atas sama persis dengan apa yang kalian lakukan ketika membuat Query pada Microsoft Access. Kita akan buat beberapa contoh yang lebih kompleks. Perhatikan contoh-contoh berikut.

Contoh 12.1. View untuk menampilkan nama Guru yang alamat rumahnya di luar kota Malang.

Pada contoh ini kita menggunakan tabel Guru sebagai sumber View. Buat View baru kemudian tampilkan jendela seperti pada Gambar 12.13. Pilih tabel Guru kemudian Close. Klik Nama, Alamat dan Kota pada kotak tabel Guru. Kemudian pada jendela Criteria, pilih baris Kota dan pada kolom Filter ketikkan pernyataan <> ‘Malang’. Jalankan View ini, kalian akan mendapatkan hasil seperti pada Gambar 12.16.

Kolom Filter pada jendela Criteria digunakan untuk memilih baris yang sesuai dengan keinginan kita. Pada contoh di atas, digunakan untuk memilih baris yang isi kolom Kotanya bukan ‘Malang’. Kita menggunakan tanda <> untuk menyatakan ketidaksamaan.

Contoh 12.2. View untuk menampilkan nama, nomor induk, dan program keahlian Siswa secara urut abjad nama.

Contoh ini membutuhkan minimal 2 tabel, yaitu tabel Siswa dan tabel Program. Perhatikan relasi antar tabel pada Gambar 12.12. Tabel Siswa berhubungan langsung dengan tabel Program. Dengan cara yang sama seperti Contoh 12.13, pilih tabel Siswa dan tabel Program. Pada kotak Siswa di jendela Diagram pilih Nama dan NoInduk sedangkan pada kotak Program pilih NamaProgram. Pada jendela Criteria, pilih baris Nama dan klik pada kolom Sort Type kemudian pilih Ascending. Kemudian jalankan View tersebut. Kalian akan mendapat hasil seperti pada Gambar 12.17. Perhatikan pada jendela Result, kolom Nama ditampilkan berurutan sesuai dengan abjad.

Contoh 12.3. View untuk menampilkan nama Guru dan bidang keahliannya secara urut abjad nama.

Berdasarkan relasi tabel pada Gambar 12.12, maka View pada contoh ini membutuhkan tiga buah tabel yaitu tabel Guru, Guru_Bidang dan Bidang. Kolom Nama ada di tabel Guru sedangkan kolom NamaBidang ada pada tabel Bidang. Pilih tiga tabel tersebut. Pada kotak Guru di jendela Diagram pilih Nama kemudian pada kotak Bidang pilih NamaBidang. Pada jendela Criteria, pilih baris Nama dan klik pada kolom Sort Type kemudian pilih Ascending. Jalankan View ini. Perhatikan hasil yang diperoleh.

12.6. MENGGUNAKAN T-SQL

Transact-SQL (disingkat T-SQL) adalah varian dari bahasa basis data SQL yang dikeluarkan oleh perusahaan Microsoft dan Sybase. Microsoft SQL Server hanya mengenali bahasa SQL tipe T-SQL ini. Oleh karena itu jika kalian ingin menggunakan Microsoft SQL Server, maka kalian harus memahami bahasa ini.

Secara umum T-SQL tidak berbeda jauh dengan SQL standard. Hal ini karena T-SQL sebenarnya adalah bahasa SQL standar yang diberi tambahan perintah-perintah khusus untuk membantu kerja dalam SQL Server. Perintah SELECT, FROM dan WHERE yang telah kita singgung di awal bab, tetap menjadi perintah utama di T-SQL.

Untuk membuat perintah-perintah T-SQL ini SQL Server mempunyai jendela Query yang dapat kita buka dengan cara klik pada tombol New Query di bawah Menu Bar (lihat Gambar 12.19). Sebelumnya pilih terlebih dahulu basis data yang ingin kita gunakan dengan cara klik pada nama basis data di Object Explorer. Setelah jendela Query terbuka kalian dapat mulai mengetikkan perintah-perintah SQL.


12.6.1.Definisi Tabel dengan T-SQL

Hampir semua aktivitas di dalam SQL Server dapat dilakukan dengan menggunakan perintah-perintah T-SQL. Termasuk membuat tabel. Pada sub bab sebelumya kalian telah membuat tabel-tabel dengan menggunakan fasilitas GUI. Kalian juga bisa membuat tabel-tabel tersebut dengan perintah-perintah SQL. Perintah-perintah yang berhubungan dengan definisi tabel termasuk dalam kategori DDL. Perintah untuk pendefinisian atau pembuatan tabel baru adalah CREATE TABLE. Sedangkan untuk menghapus kita menggunakan perintah DROP TABLE

Buat basis data baru dengan nama Lat-01_SQL. Kemudian pilih basis data tersebut. Buka jendela Query seperti pada Gambar 12.18. Kiata akan membuat tabel-tabel yang sama seperti pada Lat-01 tetapi dengan perintah SQL. Tabel pertama yang kita buat adalah tabel Siswa (lihat kembali struktur tabel ini pada Tabel 12.1 di atas). Ketikkan perintah berikut ini, kemudian jalankan dengan klik tanda seru (!).


Perintah CREATE TABLE diikuti dengan nama tabel yang akan kita buat ([dbo].[Bidang]) kemudian diikuti dengan daftar kolom yang ada pada tabel tersebut. Pada daftar kolom ini, tipe data, lebar data dan kondisi lainnya (misalnya NOT NULL atau NULL) harus dicantumkan. Setelah itu baru bagian CONSTRAINT dari tabel tersebut dituliskan. Bagian CONSTRAINT ini biasanya berisi pendefinisian Primary Key dari tabel tersebut. Perhatikan cara penulisan perintah-perintah di atas.

Setelah kalian jalankan, periksalah pada bagian node Tables apakah tabel kalian sudah terbentuk atau belum. Klik kanan pada Tables basis data kalian di Object Explorer kemudian pilih Refresh. Tabel baru yang kalian buat akan muncul di bawah Object Tables. Buatlah tabel-tabel lainnya dengan cara yang sama. Berikut ini perintah-perintah pembuatan masing-masing tabel.

Pada perintah-perintah pembuatan tabel di atas, kita belum membuat relasi antar tabel. Relasi antar tabel pada SQL biasanya dinyatakan dalam hubungan FOREIGN KEY (lihat kembali pengertian FOREIGN KEY pada bab 10 dan 11). Kita perlu memodifikasi tabel dengan menambahkan CONSTRAINT agar tabel dapat mengerti relasi antar tabel. Buka kembali jendela Query kemudian ketikkan perintah-perintah berikut ini.


Perintah untuk memodifikasi atau merubah struktur tabel adalah ALTER TABEL kemudia diikuti dengan nama tabel yang ingin dirubah. Perhatikan pada baris ALTER TABLE [dbo].[Siswa] WITH CHECK ADD CONSTRAINT [FK_Siswa_Program] FOREIGN KEY([IdProgram]). Tabel yang ingin

dimodifikasi adalah dbo.Siswa dan tabel ini berhubungan dengan tabel Program sehingga dituliskan FK_Siswa_Program. Kolom IdProgram pada tabel Siswa merupakan FOREIGN KEY sehingga dituliskan sebagai FOREIGN KEY([IdProgram]). Kolom IdProgram ini berasal dari tabel program sehingga pada bagian akhir perintah harus dituliskan referensi tabelnya (ditulis dengan REFERENCES [dbo].[Program] ([IdProgram])). Dengan cara yang sama relasi-relasi antar tabel di atas dibuat.

Perintah DROP TABEL sangat mudah dilakukan yaitu tinggal menambahkan nama tabel didepan perintah tersebut. Misalnya DROP TABLE [dbo].[Bidang].

12.6.2. Pengisian, Perubahan dan Penghapusan Isi Tabel dengan SQL

Setelah semua tabel selesai dibuat, maka kita dapat mengisi data pada masing-masing tabel dengan menggunakan perintah INSERT. Perintah ini termasuk dalam kelompok DML. Kita akan mencoba menggunakan perintah ini pada tabel Bidang. Kita periksa dulu isi tabel Bidang dengan cara klik kanan pada nama tabel kemudian pilih Open Table. Isi tabel akan muncul pada jendela Summary (Gambar 12.20). Tutup kembali jendela Open Table tersebut.


Perintah INSERT diikuti dengan nama basis data dan nama tabel ([Lat[1]01].[dbo].[Bidang])kemudian diikuti dengan nama kolom yang ada pada tabel tersebut. Kata kunci VALUES digunakan untuk memberi petunjuk bahwa bagian setelah kata kunci ini adalah data yang akan dimasukkan. Perhatikan,


Kalau kalian perhatikan, perintah INSERT di atas terlalu panjang. Coba hapus bagian daftar nama kolom pada perintah tersebut. Kemudian ganti data di bawah VALUES menjadi (9, ’Digital Animation’, NULL). Kemudian jalankan dan periksalah hasilnya. Apa yang terjadi? Setelah Refresh, kalian akan menjumpai bahwa data kalian juga dapat dimasukkan tanpa harus menyebut daftar nama kolom pada perintah INSERT.

Seringkali dalam pengisian data pada suatu tabel, kita melakukan kesalahan. Kesalahan dapat berupa kesalahan ketik atau kesalahan pembacaan data. Sehingga ketika diperiksa, kita menginginkan untuk merubah/memperbaiki data tersebut. Proses ini biasa disebut sebagai update data. SQL menyediakan perintah UPDATE untuk melakukan proses ini. Perintah ini masih termasuk dalam kelompok DML.

Misalnya kita ingin merubah isi kolom NamaBidang pada IdBidang yang ke-5 (lihat Gambar 12.21). Dari ‘Fotografi’ kita rubah menjadi ‘Fotografi Digital’ maka kita ketikkan perintah seperti berikut.

Periksa kembali isi tabel Bidang. Jangan lupa untuk me-refresh dulu tabel Bidang sebelum perintah Open Table dijalankan.

Penghapusan data dengan SQL dilakukan dengan perintah DELETE. Perlu diperhatikan bahwa perintah DELETE akan menghapus isi seluru baris. Kalau kalian hanya ingin mengosongkan isi satu bagian dari baris (atau satu sel) saja gunakan perintah UPDATE. Misalnya kita ingin kita menghapus baris yang IdBidangnya sama dengan 8 maka kita ketikkan dengan perintah seperti berikut.

12.6.3.Mencari dan Menampilkan Data (View) dengan SQL

Seperti telah disinggung di awal bab, perintah utama dalam SQL adalah SELECT, FROM dan WHERE. Sebagian besar aktivitas kita menggunakan SQL berhubungan dengan perintah-perintah ini. Untuk menggunakan perintah[1]perintah ini, buka jendela Query kemudian ketikkan perintah yang kalian inginkan. Jalankan dengan menekan tombol tanda seru (!).

Perintah SELECT digunakan untuk memilih kolom mana saja yang akan ditampilkan. Jika kita ingin menampilkan semua kolom, kita cukup menggunakan tanda *. Perintah FROM digunakan untuk menentukan asal kolom yang ingin kita tampilkan datanya. Perintah WHERE digunakan untuk membatasi baris-baris yang akan kita tampilkan agar sesuai dengan kriteria yang kita inginkan. WHERE bisa dari tabel atau hasil dari View yang lain. Perhatikan contoh-contoh penggunaan SQL berikut ini.

Contoh 12.4. Menampilkan semua data pada tabel Bidang.

Contoh ini kita membutuhkan tabel Bidang. Sedangkan kolom yang kita ingin tampilkan adalah semua kolom. Kita dapat menggunakan tanda * atau mendaftar semua kolom yang ada pada tabel Bidang. Berikut adalah perintah SQL dan hasil eksekusinya.

Jika kalian ingin menyimpan dalam bentuk View perintah di atas, tambahkan sebelum pernyataan SELECT perintah CREATE VIEW AS. Ganti dengan nama yang kalian inginkan.

Contoh 12.5. Menampilkan data nama dan alamat siswa.

Pada contoh ini kita membutuhkan tabel Siswa. Sedangkan kolom yang kita inginkan adalah kolom nama, alamat, dan kota. Kita tidak bisa menggunakan tanda *, tetapi harus mendaftarkan nama kolom nama dan alamat setelah perintah SELECT. Perhatikan perintah SQL dan outpunya berikut ini.

Contoh 12.6. Menampilkan data nama siswa yang rumahnya di Batu.

Pada contoh ini kita membutuhkan pernyataan WHERE untuk membatasi baris yang ingin kita tampilkan. Tabel yang dipakai adalah tabel Siswa dan kolom yang ingin ditampilkan adalah kolom Nama. Kalau kalian perhatikan hasil eksekusi contoh 12.2 di atas, yang alamat rumahnya di Batu ada dua orang yaitu Pepe Ricard dan Bubi Red. Pernyataan WHERE diikuti dengan kondisi yang harus dipenuhi. Pada kasus ini adalah Kota=’Batu’. Berikut ini perintah SQL secara lengkap dan outputnya. Perhatikan cara penulisannya.


Contoh 12.7. Menampilkan data nama, alamat dan kota dari guru yang rumahnya tidak di Malang.

Pada bagian ini kita juga menggunakan perintah WHERE untuk membatasi data yang ingin kita tampilkan. Tabel yang kita gunakan adalah tabel guru dan kolom yang kita butuhkan adalah kolom nama, alamat dan kota. Pernyataan yang rumahnya tidak di Malang merupakan kondisi yang harus dipenuhi. Sehinga secara lengkap pernyataan akan tampak seperti berikut.


Contoh 12.8. Menampilkan data nama siswa dan program keahlian yang diikuti.

Pada contoh ini kita melibatkan dua buah tabel yang saling berhubungan yaitu tabel Siswa dan tabel Program. Yang kita ingin tampilkan adalah kolom Nama pada tabel Siswa dan kolom NamaProgram pada tabel Program. Untuk kasus seperti ini pada perintah SELECT pemanggilan nama kolom harus didahului dengan nama tabelnya. Sedangkan pada FROM kita menggunakan perintah INNER JOIN untuk menggabung dua tabel. Perlu kalian cermati (lihat Tabel 12.1 di atas), pada tabel Siswa terdapat Foreign Key yaitu IdProgram yang merupakan Primary Key pada tabel Program. IdProgram ini merupakan penghubung yang dapat kita gunakan untuk menggabung dua tabel. Perhatikan pernyataan SQL berikut ini dan cermati outputnya.

Contoh 12.9. Menampilkan data nama siswa yang mengikuti program keahlian RPL

Contoh ini merupakan kelanjutan dari contoh 12.4. Kita menambahkan pernyataan WHERE untuk menampilkan nama yang ikut program keahlian RPL. Selain itu kita hanya ingin menampilkan kolom Nama dari tabel Siswa. Perhatikan pernyataan SQL berikut dan hasil eksekusinya.

Contoh 12.10. Menampilkan data nama guru dan bidang keahliannya.

Contoh ini lebih kompleks dari contoh-contoh di atas. Kita melibatkan tiga buah tabel, yaitu tabel Guru, tabel Guru_Bidang dan tabel Bidang. Perhatikan relasi antar tabel tersebut pada Gambar 12.11. Ada dua INNER JOIN yang kita gunakan, yaitu INNER JOIN tabel Guru dengan tabel Guru_Bidang dan INNER JOIN Guru_Bidang dengan tabel Bidang. Perhatikan bagaimana membuat pernyataan INNER JOIN.

Contoh 12.11. Menampilkan data nama guru yang bidang keahliannya Pemrograman Web atau Basis Data.

Contoh ini merupakan pengembangan dari contoh 12.10. Kita ingin menampilkan guru yang bidang keahliannya Pemrograman Web atau Basis Data. Kita perlu menambahkan perintah WHERE untuk membatasi baris. Pada WHERE kita juga perlu operator OR. Perhatikan perintah SQL dan hasil eksekusinya berikut ini.

Bandingkan dengan hasil eksekusi contoh 12.10. Cobalah ganti OR dengan AND dan jalankan kembali perintah SQL tersebut. Bagaimanakah hasilnya?

Contoh-contoh di atas dapat dikembangkan lagi dengan banyak variasi. Dengan banyak mencoba dan berlatih maka kalian akan dapat memahami dengan baik penggunaan perintah-perintah SQL.

12.7. FUNGSI, PROCEDURE DAN TRIGGER

Microsoft SQL Server menyediakan fasilitas-fasilitas tingkat lanjut yang tidak dimiliki oleh Microsoft Access seperti kemampuan membuat fungsi, mendefinisikan store procedure dan trigger. Hal ini karena SQL Server diperuntukkan sebagai basis data server yang membutuhkan kinerja yang lebih kuat dari Microsoft Access.

12.7.1. FUNGSI

T-SQL menyediakan banyak fungsi yang digunakan untuk mempermudah tugas-tugas dalam pengelolaan basis data. Beberapa fungsi penting akan disampaikan di sini. Untuk lebih lengkapnya silahkan baca manual atau online[1]help dari SQL Server.

·       Fungsi-fungsi yang berhubungan dengan numeri

Fungsi-fungsi penting yang berhubungan dengan numeric (angka) adalah isNumeric dan Round. Fungsi isNumeric digunakan untuk memeriksa apakah isi suatu data berupa data angka atau tidak. Buka jendela Query kemudian ketikkan perintah seperti pada contoh 12.12 dan periksalah hasilnya. Tabel Siswa mempunyai kolom Telepon yang isi datanya sekilas berupa angka. Kita dapat memeriksa dengan menggunakan fungsi isNumerik. Pada hasil eksekusi di bawah ini terlihat nilai hasil pemeriksaan menghasilkan angka 0 untuk seluruh data. Angka 0 berarti false. Berarti, semua data pada kolom Telepon bukan data numeric.

Contoh 12.12. Menggunakan fungsi isNumeric.

Fungsi ROUND digunakan untuk membulatkan bilangan pecahan ke bilangan bulat terdekat. Misalnya 13.58 akan menjadi 14.00. Perhatikan contoh berikut ini.

Contoh 12.13. Menggunakan fungsi Round.

·       Fungsi-fungsi yang berhubungan dengan string

Fungsi-fungsi penting yang berhubungan dengan karakter (string) antara lain adalah LEFT, RIGHT, LEN, LOWER, UPPER, LTRIM, dan RTRIM

LEFT digunakan untuk memilih sejumlah karakter tertentu dari sebelah kiri sedangkan RIGHT dari sebelah kanan. Hasil dari RIGHT tergantung dari lebar data yang kalian tetapkan pada pembuatan table. LEN digunakan mengetahui panjang karakter pada data. Perhatikan contoh berikut.

Contoh 12.14. Menggunakan LEFT, RIGHT dan LEN.

LOWER digunakan untuk merubah karakter menjadi huruf kecil, sedangkan UPPER sebaliknya. LTRIM digunakan untuk menghilangkan space di sebelah kiri data string, sedangkan RTRIM di sebelah kanan. Lihat contoh berikut.

Contoh 12.15. Menggunakan fungsi UPPER dan LOWER.

·       Fungsi-fungsi yang berhubungan dengan waktu

Fungsi-fungsi yang berhubungan dengan waktu yang penting antara lain: GETDATE, MONTH, DAY, YEAR, DATENAME, DATEADD, and DATEDIFF. GETDATE digunakan untuk mendapatkan tanggal sekarang dari system computer. MONTH digunakan untuk mengambil bagian bulan dari data tanggal. DAY digunakan untuk mengambil bagian tanggal dari data tanggal. YEAR digunakan untuk mengambil bagian tahun dari data tanggal. DATENAME digunakan untuk mendapatkan nama hari dari suatu tanggal. DATEADD digunakan untuk menambah atau mengurangi data tanggal. DATEDIFF digunakan untuk melihat selisih antara dua buah data tanggal. Perhatikan contoh berikut.

Contoh 12.16. Menggunakan fungs-fungsi waktu.

12.7.2. Procedure dan Stored Prosedure

Selain fungsi-fungsi yang tersedia di atas, SQL Server juga memperkenalkan user-defined function. Fungsi ini adalah fungsi yang dapat kita buat sendiri untuk mempercepat pengelolaan basis data. Kadang-kadang fungsi jenis ini disebut juga procedure. Ada dua tipe user defined function yaitu scalar dan inline table-value. Fungsi scalar menghasilkan satu nilai keluaran melalui kata kunci Return. Inline Table-Value menghasilkan suatu table baru ketika dieksekusi. Perhatikan contoh berikut.

Contoh 12.17. Membuat fungsi scalar.



Fungsi yang ada di atas ini diberi nama dbo.FullName. Parameter yang digunakan ada dua yaitu @FirstName dan @LastName. Perhatikan bagaimana mendefinisikan suatu fungsi dan parameternya.

Output dari fungsi akan bertipe data nVarChar dengan lebar data 35. Fungsi ini akan memberikan output satu nilai yaitu gabungan dari @LastName dan @Firstname. Sehingga kita bisa nyatakan ini termasuk dalam fungsi scalar.

Pada kode yang di blok, terlihat bagaimana fungsi tersebut dipanggil pada suatu pernyataan query. Perhatikan output yang dihasilkan. Terbentuk kolom baru yang berisi gabungan kolom LastName dan FirstName.

Stored procedure adalah potongan kode program yang dapat menerima parameter input dan menghasilkan satu atau lebih parameter output. Stored procedure umumnya digunakan untuk operasi-operasi pada basis data. Biasanya suatu perintah SQL yang rumit, panjang dan kompleks disimpan sebagai stored

procedure. Jika kita ingin melakukan operasi tersebut kita tidak perlu mengetik ulang, cukup kita panggil nama stored procedure dan kita eksekusi langsung.

Perintah untuk membuat stored procedure adalah CREATE PROCEDURE kemudian diikuti dengan nama procedure-nya. Perhatikan contoh berikut ini.

Contoh 12.18. Membuat stored procedure.

Buka jendela Query, kemudian ketikkan kode berikut ini.

Procedure yang kita buat ini bernama hapusBaris dengan satu parameter yaitu @IdNumber dengan tipe data smallint. Pernyataan setelah AS adalah pernyataan SQL yang akan dikerjakan ketika stored procedure di atas dijalankan

.12.7.3. Trigger

Trigger adalah tipe khusus dari stored procedure yang akan dieksekusi ketika suatu kejadian muncul. Kejadian tersebut misalnya ketika ada penambahan data (INSERT), penghapusan data (DELETE) atau perubahan data (UPDATE). Trigger biasanya merupakan komponen dari suatu table.

Cara membuatnya adalah klik node di depan table yang anda pilih. Setelah muncul daftar komponen table tersebut klik kanan pada Trigger dan pilih New Trigger. SQL Server akan menampilkan jendela baru yang isinya adalah template dari Trigger. Hapus semua teks pada jendela tersebut kemudian ketikkan contoh berikut ini.

            Contoh 12.19. Membuat trigger.

Trigger di atas berada pada table Bidang. Nama triggernya adalah coba_trigger dan akan dijalankan ketika event pemasukkan data (INSERT) pada table dbo.Bidang terjadi.

12.8. ADMINISTRASI SQL SERVER

12.8.1. Security dan Authentication.

Security atau keamanan basis data merupakan komponen yang sangat penting. Karena sifatnya yang berperan sebagai server maka sebenarnya SQL Server secara teori dapat diakses oleh siapa saja. Hal ini tentu akan sangat merugikan jika ada pihak-pihak yang tidak bertanggung jawab melakukan perubahan, perusakan atau bahkan menghapus basis data yang kita buat dengan susah payah.

SQL Server menyediakan mekanisme Authentication untuk membatasi siapa yang berhak masuk ke dalam sistem SQL Server. Ada dua model authentication yaitu Windows Authentication dan SQL Server Authentication.

·       Windows Authentication. Pada model ini SQL Server tidak melakukan pengecekan pada user name dan password yang diberikan namun dipercayakan pada system operasi Windows. Artinya sebenarnya hanya user yang terdaftar pada computer tersebut yang mungin bisa masuk pada SQL Server.

·       SQL Server Authentication. Informasi user name dan password disimpan dalam SQL Server sehingga setiap kali ada user yang akan masuk koneksi ke SQL Server, SQL Server akan memeriksanya.

Untuk melihat model authentication apa yang ada di SQL Server, klik kanan pada nama server di jendela Object Explorer kemudian pilih Properties. Pada jendela Server Properties pilih bagian Security sehingga tampilan akan tampak seperti pada Gambar 12.22.

Untuk menambahkan user yang bisa masuk ke SQL Server, klik node pada Security di Object Explorer, kemudian klik kanan Logins. Pilih New Logins untuk membuka jendela Login seperti pada Gambar 12.23. Buat user baru yang kalian inginkan

12.8.2. Permissions

Permissions berhubungan dengan hak akses seorang user pada suatu basis data. Seorang yang sudah terdaftar sebagai user pada SQL Server tidak secara otomatis bisa menggunakan basis data yang ada jika belum diberi hak. Untuk mengubah hak user pada basis data tertentu, klik node pada Logins. Klik kanan pada nama user yang terdaftar di bawah Logins kemudian pilih Properties. Pada jendela Login Properties, pilih bagian User Mapping sehingga tampilan akan tampak seperti pada Gambar 12.24.

Gambar di atas menunjukka user dengan nama sa merupakan pemilik (db_owner) dari beberapa basis data (lihat basis data yang dicentang). Kita dapat mengatur peran (role) seorang member pada basis data dengan mencentang atau tidak pada bagian Database role membership.

12.9. RINGKASAN

·       Data Definition Language (DDL) adalah satu paket bahasa DBMS yang berguna untuk melakukan spesifikasi terhadap skema basis data sedangkan Data Manipulation Language (DML) adalah satu paket DBMS yang memperbolehkan pemakai untuk mengakses atau memanipulasi data sebagaimana yang telah diorganisasikan sebelumnya dalam model data yang tepat.

·       SQL lebih menekankan pada aspek pencarian dari dalam tabel hal ini karena pencarian adalah inti dari pengelolaan data.

·       Pembuatan Tabel dan View pada SQL server dapat dilakukan dengan cara GUI atau dengan menggunakan perintah-perintah SQL.

·       Perintah utama SQL adalah SELECT, FROM dan WHERE.

·       Microsoft SQL Server menyediakan fasilitas fungsi built-in dan user-defined function

·       Stored procedure adalah potongan kode program yang dapat menerima parameter input dan menghasilkan satu atau lebih parameter output. Trigger adalah tipe khusus dari stored procedure yang akan dieksekusi ketika suatu kejadian muncul

SQL Server menyediakan mekanisme Authentication untuk membatasi siapa yang berhak masuk ke dalam sistem SQL Server dengan dua model yaitu Windows Authentication dan SQL Server Authentication. Selain itu keamanan data juga diatur dengan cara pemberian permissions.