Anda di halaman 1dari 87

BERMAIN DATA DENGAN SQL SERVER

Rangga Praduwiratna

Bermain Data dengan SQL Server Rangga Praduwiratna Bandung, Januari 2010

Judul Buku Bermain Data dengan SQL Server Tebal buku 81 halaman

Seluruh dokumen ini dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial, dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen.

ii | B e r m a i n D a t a d e n g a n S Q L S e r v e r

1
KATA PENGANTAR
Puji syukur saya panjatkan ke hadirat Allah SWT, karena hanya atas ijin-Nya lah buku ini dapat diselesaikan. Selama kurang lebih 1 bulan, saya mencoba menyelesaikan buku ini sesuai janji saya kepada pak Julius Fenata (ADE Microsoft Indonesia) beberapa bulan yang lalu. Dalam buku yang singkat dan ringan ini, Anda akan diajak untuk berkenalan terlebih dahulu dengan istilah database (basis data), DBMS, serta SQL Server 2005 Express Edition (sebagai salah satu aplikasi DBMS gratis dari Microsoft). Anda pun akan diajak untuk mencoba aplikasi ini untuk membangun sebuah web e-commerce. Buku ini tentu masih jauh dari sempurna, oleh karenanya, jika ada saran, pertanyaan, maupun kritik yang berkaitan dengan substansi buku ini, dapat Anda kirimkan ke ziglaret@yahoo.co.nz. Akhir kata, saya mengucapkan banyak terima kasih kepada para pembaca yang telah mengunduh buku ini. Semoga buku ini dapat bermanfaat bagi rekan-rekan sekalian, dan semoga buku-buku berikutnya pun dapat segera diselesaikan oleh saya.

Januari 2010

Rangga Praduwiratna

iii | B e r m a i n D a t a d e n g a n S Q L S e r v e r

1
DAFTAR ISI
KATA PENGANTAR.............................................................................................iii DAFTAR ISI .........................................................................................................iv DATABASE & SQL SERVER 2005 ........................................................................ 1 BERKENALAN DENGAN SQL SERVER ............................................................. 5 INSTALASI SQL SERVER ................................................................................ 12 MEMASUKI DUNIA SQL SERVER ...................................................................... 27 MEMBUAT DATABASE BARU....................................................................... 28 FILEGROUP .................................................................................................. 34 LOG FILE ...................................................................................................... 35 MEMBUAT TABEL PADA DATABASE ............................................................ 36 MENGENAL LEBIH JAUH SQL SERVER.............................................................. 41 DDL (DATA DEFINITION LANGUAGE) .......................................................... 41 DML (DATA MANIPULATION LANGUAGE) .................................................. 44 MENGENAL TIPE DATA SQL SERVER 2005................................................... 46 MENGENAL TEKNIK ADMINISTRASI SQL SERVER ............................................ 51 MELIHAT INFORMASI DATABASE ................................................................ 52 SQL SERVER CAPACITY PLANNING .............................................................. 54 MENGATUR HAK PENGGUNA SQL SERVER ................................................. 55 MELAKUKAN BACKUP PADA DATABASE ..................................................... 57 MEMBANGUN APLIKASI E-COMMERCE .......................................................... 65 PENUTUP ......................................................................................................... 81

iv | B e r m a i n D a t a d e n g a n S Q L S e r v e r

1
DATABASE & SQL SERVER 2005
Dalam kehidupan sehari-hari, mungkin Anda pernah mendengar sebuah istilah yang bernama database (basis data). Bagi Anda yang awam dengan istilah-istilah teknologi informasi maupun baru memasuki dunia IT, istilah ini mungkin terdengar seperti momok yang menakutkan bukan? Sebetulnya, apa sih yang dimaksud dengan database? Database pada dasarnya merupakan kumpulan informasi yang disimpan di dalam komputer secara sistematik, sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari database tersebut. Berdasarkan sejarah, catatan yang mirip dengan basis data sebenarnya sudah ada semenjak masa revolusi industri. Perwujudannya berupa bentuk buku besar (akuntansi), kuitansi dan kumpulan data yang berhubungan dengan bisnis.1

Definisi basis data berdasarkan wikipedia ( http://id.wikipedia.org/wiki/Basis_data )

1|Bermain Data dengan SQL Server

Lantas, apakah database hanya bisa dimengerti oleh orang-orang yang berkecimpung dalam dunia teknologi informasi? Tentu saja jawabannya adalah TIDAK. Ya, saya mengatakan hal demikian karena pada dasarnya database hampir digunakan dalam berbagai aspek kehidupan. Mulai dari hal kecil, hingga hal-hal yang rumit dan berskala besar. Mari saya berikan sedikit contoh untuk itu: seorang guru di SMA A mengajar mata pelajaran Biologi untuk 8 kelas IPA yang masing-masing kelasnya berjumlah sekitar 30 anak. Ketika masa ujian akhir tiba, ia pun harus mendata nilai-nilai tugas maupun ujian anak-anak sekolah tersebut. Ia pun menggunakan sebuah aplikasi bernama Microsoft Excel untuk mengatur data-data tersebut untuk mengetahui nilai rata-rata kelas serta untuk mengetahui apakah semua siswa yang bersangkutan mendapat nilai minimum untuk naik kelas atau tidak.

2|Bermain Data dengan SQL Server

Nah, mari kita telaah satu persatu kasus tersebut agar pemahaman kita terhadap database dapat menjadi lebih komprehensif:

Nilai seorang siswa bernama Andi adalah: 7, 6, 9, 8, 8, 9. Datadata tersebut tentu sulit dipahami jika tidak ada informasi berupa header yang menerangkan nilai apakah tersebut. Untuk itu, sang guru pun menambahkan keterangan mengenai no.absen siswa, nama siswa, dan nilai apa sajakah yang diperoleh oleh Andi dalam mata pelajaran Biologi tersebut. Setelah selesai, sang guru pun menambahkan statistik nilai terendah, tertinggi, serta nilai rata-rata dalam sebuah kelas. Keseluruhan proses ini pun menyulap data-data yang dimiliki oleh sang guru menjadi sebuah informasi yang berguna.

3|Bermain Data dengan SQL Server

Jika proses ini dilanjutkan ke jenjang yang lebih besar, maka akan diperoleh pula nilai siswa dalam satu kota, daerah, bahkan sebuah negara. Nah, namun, ketika konteks tersebut mengalami perubahan skala menjadi lebih besar dan data-data yang digunakan pun bertambah banyak, maka sebuah aplikasi MS Excel pun akan mengalami berbagai keterbatasan-keterbatasan. Bisa jadi keterbatasan tersebut karena maksimal jumlah data yang dapat diinput ke excel hanyalah sebanyak 65.000 baris semata (pada MS Excel 2003)2 dan berbagai alasan lainnya. Disinilah perlunya sebuah aplikasi pengelolaan data yang lebih baik, yang mampu menangani data yang begitu banyak dan berskala besar. Jika Anda senang mengutak-atik pemrograman, mungkin Anda pernah mendengar berbagai nama aplikasi pengelolaan data seperti MySQL, Microsoft Access, Oracle, DB2, Microsoft SQL Server, dsb. Kesemua nama aplikasi tersebut merupakan sistem manajemen basis data atau yang lebih dikenal dengan istilah DBMS (Database Management System). Lantas, apa saja kelebihan menggunakan perangkat lunak canggih tersebut ketimbang menggunakan perangkat lunak sederhana semacam MS Excel? Mari kita lihat hal tesebut di bagian sebelumnya.

Pada MS Excel 2003, jumlah maksimum baris yang diijinkan hanyalah sebanyak 65000 saja, namun pada MS Excel 2007, jumlah ini ditingkatkan menjadi hingga 1 juta baris. Untuk keterangan lebih lanjut lihat http://msdn.microsoft.com/en-us/library/aa730921.aspx

4|Bermain Data dengan SQL Server

BERKENALAN DENGAN SQL SERVER


Sesuai dengan judul buku ini Bermain data dengan SQL Server, maka sudah barang tentu saya pun akan membahas DBMS dari perspektif tersebut saja. DBMS merupakan suatu sistem perangkat lunak yang

memungkinkan pengguna komputer untuk membuat, memelihara, mengontrol, serta mengakses data pada database secara praktis, cepat, dan efisien. Dengan adanya DBMS, kontrol serta manipulasi terhadap data pun menjadi jauh lebih mudah. Dalam dunia IT, dikenal pula istilah RDBMS yang merupakan salah satu jenis DBMS yang mendukung adanya hubungan antar tabel-tabel di dalam database. Tentu saja, RDBMS bukanlah satu-satunya jenis DBMS yang tersedia, masih terdapat berbagai jenis-jenis DBMS lainnya yang disesuaikan dengan proses pembuatannya.

5|Bermain Data dengan SQL Server

Kehadiran DBMS dalam dunia IT tentu saja sangatlah krusial sifatnya, mengingat esensi dari teknologi informasi adalah mengolah data menjadi informasi yang berguna. Sebelum data tersebut diolah menjadi informasi, tentu kita memerlukan sebuah perangkat lunak untuk mengelola data tersebut bukan? DBMS

Database

Database

Database

Tabel

Tabel

Tabel

Field & Record Pada diagram diatas, kita dapat melihat bagaimana hubungan DBMS dengan database, tabel, serta field dan record (nilai dari data yang terdapat pada tabel). DBMS bertugas untuk mengelola sekumpulan database yang menampung sejumlah tabel. Microsoft SQL Server merupakan salah satu produk Microsoft yang termasuk ke dalam famili DBMS tersebut.

6|Bermain Data dengan SQL Server

Pada kesempatan ini, saya akan membahas mengenai SQL Server 2005 Express Edition. Sesuai dengan namanya yang mencakup istilah server (sebuah sistem komputer yang menyediakan jenis layanan tertentu dalam sebuah jaringan komputer), SQL Server menawarkan kemudahan pengelolaan data dari beberapa komputer yang terhubung ke dalam sebuah jaringan, baik Intranet maupun Internet. Seperti yang dilansir dalam situs Microsoft, mempelajari SQL Server 2005 Express Edition dapat berarti bahwa Anda mempelajari SQL Server, yang berarti bahwa ilmu ini dapat menjadi landasan bagi Anda untuk mencicipi fitur-fitur menarik lainnya (High Availability) di edisi SQL Server lainnya (Workgroup, Standard, Developer, dan Enterprise). Sekarang mari kita mulai pembahasan mengenai SQL Server itu sendiri, dengan memulainya dari pembahasan beberapa fitur yang ditawarkan oleh SQL Server pada setiap edisinya. SQL Server 2005 Express merupakan edisi SQL Server 2005 gratis dari Microsoft yang memiliki fitur paling minimum jika dibandingkan dengan edisi-edisi lainnya.

7|Bermain Data dengan SQL Server

8|Bermain Data dengan SQL Server

Jika ditilik dari beberapa tabel diatas, memang pada dasarnya SQL Server 2005 Express Edition memiliki beberapa keterbatasan fitur, namun untuk mengenal SQL Server, fitur-fitur tersebut sudah lebih dari cukup untuk membangun sebuah aplikasi yang dapat mengolah data menjadi informasi yang berguna. Untuk manipulasi data, SQL Server menggunakan sebuah bahasa pemrograman yang dikenal dengan istilah T-SQL (Transact SQL).

9|Bermain Data dengan SQL Server

Bahasa pemrograman ini dinilai tidaklah terlalu sulit untuk dipelajari, bahkan dinilai lebih mudah dan lebih efektif dari bahasa pemrograman MySQL (bahasa pemrograman yang biasa digunakan dalam membangun sebuah website seperti CMS, e-commerce, blog, dsb).

10 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Untuk menginstall perangkat lunak SQL Server 2005, maka dibutuhkan beberapa spesifikasi komputer sebagai berikut:

Dari tabel tersebut, diketahui bahwa SQL Server 2005 Express Edition membutuhkan processor minimal Pentium III dengan kecepatan 500 MHz dan memory (RAM) sebesar 512 MB. Untuk operating system yang dapat men-support perangkat lunak ini, berikut list singkat OS yang kompatibel dengan SQL Server 2005 Express Edition:
Microsoft Windows 2000 Server SP4 Windows 2000 Professional Edition SP4 Windows XP SP2 Windows Server 2003 Enterprise Edition, Standard Edition, dan Datacenter Edition SP1 Windows Small Business Server SP1

11 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Anda mungkin bertanya-tanya, kenapa sih kok saya repot-repot menuliskan hal tersebut bahkan sebelum proses instalasi dimulai? Jawabannya sederhana: agar Anda memahami kebutuhan (prerequisites) minimum yang dibutuhkan oleh komputer Anda untuk melakukan clean installation dari SQL Server. Proses ini tentu diperlukan agar Anda tidak mengalami error ketika proses instalasi dilakukan.

INSTALASI SQL SERVER


Menginstall SQL Server 2005 Express Edition pada dasarnya tidaklah sulit, walaupun demikian Anda tetap harus memperhatikan beberapa settings pada saat instalasi dilakukan agar tidak terjadi kesalahan yang menyebabkan Anda tidak dapat menikmati fitur-fitur penting pada SQL Server. Sebetulnya, Microsoft sebetulnya telah merilis sebuah versi SQL Server 2005 gratis lainnya yang memiliki fitur lebih baik daripada versi SQL Server 2005 Express. Versi tersebut dinamakan SQL Server 2005 Express Edition with Advanced Services. 3 Kali ini, saya akan memandu Anda melakukan instalasi tersebut langkah-demi-langkah untuk mencegah terjadinya kesalahan saat proses instalasi dilakukan:

Untuk keterangan lebih lanjut, Anda dapat melihat apa saja fitur yang ditawarkan oleh SQL Server 2005 Express Edition with Advanced Services di link http://www.microsoft.com/Sqlserver/2005/en/us/express.aspx

12 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Pertama-tama, tentu kita membutuhkan installer SQL Server 2005 Express Edition. Untuk itu masuk ke website Microsoft :

http://www.microsoft.com/Sqlserver/2005/en/us/express.aspx

Klik menu Download without registering. Setelah diarahkan ke halaman selanjutnya, Anda dapat memilih installer untuk komputer dengan arsitektur 32-bit maupun 64-bit, pilih sesuai dengan spesifikasi komputer Anda.

13 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Installer 32-bit Installer 64-bit

Setelah file selesai diunduh, maka proses instalasi pun siap untuk dilakukan. Mari kita mulai langkah demi langkah proses instalasi tersebut: 1. Jika Anda belum memiliki IIS pada komputer Anda, maka kita install terlebih dahulu IIS tersebut, agar proses instalasi SQL Server 2005 Expres Edition dapat berjalan lancar. IIS merupakan salah satu prerequisites yang dibutuhkan untuk menginstall SQL Server. 2. Jika Anda memiliki CD Windows Anda, maka masukkan CD tersebut. Bagi Anda yang menggunakan Windows OS versi OEM yang biasanya sudah terinstall pada notebook, maka lanjutkan ke langkah berikutnya

14 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

3. Klik Start > Control Panel > Add or Remove Programs (pada Windows XP)

15 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Klik Add/Remove Windows Components

5. Klik opsi IIS (Internet Information Services)

16 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

6. Klik tombol Next 7. Klik tombol Install 8. Setelah IIS selesai terinstall, jalankan installer SQL Server 2005 Express Edition yang telah diunduh sebelumnya 9. Pilih opsi I accept the licensing terms and conditions dan klik tombol Next 10. Pada tampilan halaman selanjutnya, SQL Server akan menginstall komponen-komponen yang belum tersedia di komputer Anda, seperti .NET Framework 2.0, dsb. Klik tombol Install 11. Klik tombol Next 12. Pada tampilan halaman System Configuration Check, perhatikan jika ada komponen yang belum tersedia di komputer Anda, seperti IIS dsb (ditandai dengan tanda warning). Jika semuanya sudah tersedia, klik tombol Next

17 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

13. Isi nama Anda dan nama perusahaan Anda pada tampilan halaman selanjutnya

14. Klik tombol Next

18 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

15. Pada tampilan berikutnya, Anda dapat memilih fitur-fitur yang dapat diinstall. Jika pilihan Client Components bertanda silang, klik kanan pada tanda silang tersebut, dan pilih install semua fitur Client Components.

16. Klik tombol Next

19 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

17. Pilih opsi Default instance pada radio button. Tenang saja, Anda dapat menambahkan instance-instance lainnya ketika proses instalasi ini selesai.

18. Klik tombol Next

20 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

19. Pada tampilan berikutnya, Anda dapat memilih 2 mode: Use the builtin System account (Anda dapat menggunakan built-in System account, seperti: Local system, Network service, dsb) serta Use a domain user account. Untuk keamanan yang lebih baik, sebaiknya Anda menggunakan mode yang kedua (Use a domain user account). Pastikan opsi Start services at the end of setup > SQL Server sudah dicek list.

20. Klik tombol Next

21 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

21. Pilih mode Mixed Mode Autenthtification, dan jangan lupa untuk memasukkan password untuk sa logon.

22. Klik tombol Next

22 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

23. Pada tampilan berikutnya, pilih Latin1_General collation designator atau bisa juga Anda memilih mode yang lainnya jika Anda ingin menyesuaikan kompatibilitas SQL Server 2005 dengan edisi SQL Server sebelumnya (seperti terlihat pada gambar).

24. Klik tombol Next

23 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

25. Pastikan sudah terdapat tanda centang/check marks opsi Enable User Instances.

26. Klik tombol Next

24 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

27. Untuk proses finalisasi, Anda dapat memilih untuk ikut dalam program SQL Server User Feedback atau tidak. Jika Anda tidak mau direpotkan oleh hal tersebut, hapus tanda centang pada kedua opsi yang tersedia.

28. Klik tombol Next

25 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

29. Klik tombol Install 30. Klik tombol Next 31. Klik tombol Finish

Dan, Voila! SQL Server 2005 Express Edition pun telah terinstall dengan sukses di komputer Anda, kini kita bisa memasuki bab selanjutnya untuk menjajal kemampuan DBMS yang satu ini.

26 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Asdf

2
MEMASUKI DUNIA SQL SERVER
Banyak orang yang bertanya kepada saya bahwa mereka sudah menginstall SQL Server, tapi kok tampilannya berbeda dari tampilantampilan yang biasa terdapat di tutorial-tutorial ya? Jawabannya adalah kemungkinan Anda belum menginstall SQL Server Management Studio (SSMS). SSMS merupakan sebuah GUI (Graphical User Interface) yang tentu saja dapat memudahkan Anda dalam mengelola data yang Anda miliki. Seperti ucapan salah seorang kawan saya, di jaman sekarang ini, pemrograman semakin mudah untuk dilakukan. Jika sebuah teknik pemrograman rumit untuk dipelajari, maka perangkat lunak maupun teknik pemrograman tersebut akan mulai ditinggalkan oleh penggunanya. Kehadiran SSMS ini pun merupakan salah satu solusi yang menawarkan hal tersebut. Bagi Anda yang malas untuk menghapal sintaks bahasa pemrograman, pembuatan database pun dapat menjadi sangat mudah dengan kehadiran SSMS ini.

27 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Untuk menginstall SSMS, Anda perlu mengunduh satu komponen tambahan. Installer SSMS ini tersedia di halaman web yang sama ketika Anda mendownload SQL Server 2005 Express Edition.

Installer 32-bit Installer 64-bit

Setelah selesai diunduh, install aplikasi ini agar Anda dapat menggunakan GUI ketika menggunakan SQL Server 2005 Express Edition.

MEMBUAT DATABASE BARU


Dalam bab ini, kita akan mencoba membuat sebuah database baru yang berfungsi untuk menyimpan informasi KTP. Kita akan mencoba 2 langkah dalam pembuatan database ini, yaitu dengan cara menggunakan T-SQL dan dengan menggunakan GUI SSMS. Pertama, mari kita coba membuat sebuah database dengan menggunakan GUI SSMS yang tentunya akan memudahkan kita dalam melakukan pembuatan database serta manipulasi data:

28 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

1. Buka SQL Server Management Studio yang telah diinstall sebelumnya. Jika ketika proses instalasi Anda menggunakan built-in System account, maka pilih Windows Authentification, namun jika Anda menggunakan domain user account, masukkan username dan password yang telah Anda definisikan sebelumnya. Dalam contoh kali ini, saya menggunakan mode autentifikasi Windows Authentification.

29 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

2. Pada gambar di bawah ini kita dapat melihat tampilan SQL Server Management Studio. Sebelum kita memulai langkah berikutnya, ada baiknya jika saya jelaskan terlebih dahulu tampilan SSMS tersebut:
Area kerja

Toolbar Nama Server Object Explorer

30 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

3. Klik kanan pada Database pada Object Explorer, pilih opsi New Database

31 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Setelah opsi New Database diklik, maka akan muncul sebuah pop-up windows yang akan memandu Anda untuk membuat sebuah database baru

32 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

5. Isi Database name pada pop-up windows yang muncul. Kita isikan nama SocialNumberDB (harus tanpa spasi, atau kalau mau dipisahkan gunakan tanda underscore menjadi Social_Number_DB)

6. Anda dapat mengubah filegroup, initial size untuk database utama maupun log database, autogrowth size, serta lokasi file. Penjelasan mengenai filegroup dan log akan saya jelaskan di bagian berikutnya 7. Klik tombol OK

33 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

8. Database bernama SocialNumberDB pun kini telah dibuat dengan sukses. Hal ini dapat dilihat pada Object Explorer

Mudah bukan? Sesuai janji saya sebelumnya, saya akan mencoba menjelaskan mengenai filegroup serta log sebelum kita mencoba membuat tabel-tabel pada database tersebut dan mengisinya dengan beberapa data.

FILEGROUP
Filegroup merupakan logic file dari sebuah database. Dengan mengatur filegroup, kita dapat membagi sebuah objek database ke dalam beberapa file. Sebagai contoh, kita dapat membagi tabel dan nonclustered index ke dalam beberapa filegroup.

34 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Apa tujuan hal ini? Hal ini dilakukan untuk meningkatkan performa dari server komputer yang menangani database, hal ini dikarenakan manipulasi terhadap tabel dapat dilakukan kepada tabel dan index secara bersamaan (karena filegroupnya berbeda). Hal ini akan semakin efisien jika dikaitkan dengan striping harddisk menjadi tipe RAID-5. Keuntungan lainnya menggunakan filegroup dikarenakan kita dapat melakukan backup filegroup secara satu demi satu. Tindakan ini dapat menjadi efisien jika skala database sudah mencapai VLDB (Very Large Database), dikarenakan proses backup tersebut dapat memakan waktu yang cukup lama. Mengatur filegroup sebuah atau beberapa database tentu memerlukan pengalaman agar pembagian tersebut dapat menjadi efektif dan efisien, namun yang pasti fungsi ini tentu sangat berguna bagi seorang Database Administrator dalam memelihara dan mengelola database sebuah organisasi/perusahaan.

LOG FILE
Pada dasarnya format file database SQL Server terdiri dari tiga jenis. Primary database (seperti yang kita buat sebelumnya) memiliki format .mdf, kemudian jika ada filegroup dari database tersebut maka format filenya adalah .ndf, sedangkan transaction log memiliki format .ldf. File log pada sebuah database berfungsi sebagai rekam jejak atas aksi yang dilakukan kepada DBMS. Ketika kita menambah, mengedit,

35 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

maupun menghapus sebuah data pada database, semua aksi ini akan dicatat oleh sistem. Tujuannya adalah agar Database Administrator dapat melakukan recovery data jika terjadi bencana seperti kerusakan perangkat keras komputer, bencana alam, hilangnya data karena dicuri, dsb.

MEMBUAT TABEL PADA DATABASE


Setelah kita memahami beberapa istilah dalam database (khususnya SQL Server), maka kita lanjutkan praktek pembuatan database kita melalui SSMS. Pada bagian ini, kita akan mencoba membuat tabel pada database yang telah kita buat sebelumnya, untuk kemudian kita isikan beberapa data ke dalamnya. Seperti sebelumnya, untuk membuat sebuah atau beberapa tabel dalam sebuah database, kita dapat menggunakan T-SQL maupun menggunakan GUI SSMS. Kali ini, kita akan mencoba membuat sebuah tabel dengan menggunakan GUI SSMS saja: 1. Buka SSMS dan lakukan autentifikasi untuk terhubung ke database

36 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

2. Pilih database SocialNumberDB > pilih tab Tables > klik kanan dan pilih opsi New Table

37 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

3. Untuk mengisi kolom-kolom yang nantinya akan diisikan datanya, kita cukup memilih kolom kosong dan mengisi nama, tipe datanya, serta apakah kolom tersebut boleh kosong atau tidak (Allow Nulls). Sebetulnya masih ada properties lainnya yang bisa kita atur, namun pada kesempatan ini, kita akan membahas tiga point penting ini saja

38 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Selanjutnya, kita perlu mendefinisikan sebuah kolom yang akan menjadi kunci pencarian, yang biasanya dikenal dengan istilah Primary Key. Untuk mendefinisikan Primary key, biasanya kita memilih sebuah kolom yang unik yang tidak mungkin identik satu sama lain. Oleh karenanya, kita akan menggunakan idPenduduk untuk dijadikan Primary Key. Klik kanan pada kolom idPenduduk, pilih opsi Set Primary Key

5. Selanjutnya klik kanan pada tab Table yang sedang kita kerjakan, pilih opsi Save Table_1. Beri nama pada tabel tersebut (pada contoh ini, saya menggunakan nama dataPenduduk)

6. Klik tombol OK

39 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Kini kita telah mempunyai sebuah tabel pada database yang bernama tabel dataPenduduk. Selanjutnya kita akan mengisikan beberapa data ke dalam tabel tersebut dengan menggunakan GUI SSMS: 1. Expand tab Tables pada database SocialNumberDb, klik kanan dan pilih opsi Open Table 2. Masukkan data penduduk sesuai dengan tipe data yang telah kita definisikan sebelumnya (misalnya: idPenduduk bertipe data integer, maka kita hanya bisa memberi input angka 1, 2, 3..dst..)

3. Setelah selesai, tutup windows Table. Dengan menggunakan GUI SSMS, Anda tidak saja dapat menambahkan data, namun juga dapat dengan mudah menghapus dan mengedit data pada tabel database Anda

Setelah kita berhasil membuat sebuah database, tabel, dan mengisinya dengan data, kini saatnya kita mempelajari lebih jauh mengenai format T-SQL untuk melakukan DDL (Data Definition Language, seperti CREATE, ALTER, dsb), DML (Data Manipulation Language, seperti SELECT, INSERT, dsb), serta tipe-tipe data pada SQL Server.

40 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

asdf

3
MENGENAL LEBIH JAUH SQL SERVER
Seperti yang saya utarakan di bab sebelumnya, kini saatnya kita mulai mengenal sedikit demi sedikit bahasa T-SQL untuk melakukan DDL dan DML pada SQL Server. Untuk melakukan DDL maupun DML, kita tentu perlu memahami sintaks-sintaks standar yang terdapat pada bahasa T-SQL:

DDL (DATA DEFINITION LANGUAGE)


DDL merupakan bahasa pemrograman untuk mendefinisikan struktur data pada database. Istilah ini tidak hanya digunakan pada SQL saja, namun kini juga banyak digunakan untuk bahasa pemrograman formal, seperti skema XML, dsb. Kali ini kita akan membahas beberapa perintah DDL yang dapat digunakan untuk membuat tabel, menghapus, serta memanggil tabel untuk keperluan pengeditan data.

41 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Perintah CREATE

Jika diimplementasikan, maka T-SQL untuk membuat sebuah tabel bernama employees pada database X adalah sebagai berikut: CREATE TABLE employees (AddressLine1 varchar(30) City varchar(30) StateProvinceID int PostalCode char(10) CountryID int NOT NULL, NULL, NULL, NULL, NULL)

Selain perintah CREATE standar, pada SQL Server 2005, kita juga dapat membuat temporary table yang bersifat lokal maupun global. Temporary table akan dimasukkan ke dalam database tempdb. Temporary table lokal bersifat hanya dapat dilihat oleh pembuat tabel. Tabel ini akan secara otomatis dihapus ketika koneksi database dihentikan (disconnect). Untuk membuat tabel jenis ini, cukup menambahkan tanda # di depan nama tabel:

42 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

CREATE TABLE #employees (AddressLine1 varchar(30) City varchar(30) StateProvinceID int PostalCode char(10) CountryID int

NOT NULL, NULL, NULL, NULL, NULL)

Sebaliknya, tabel temporer global dapat dilihat oleh semua pengguna komputer pada SQL Server, namun tabel ini pun akan langsung dihapus ketika koneksi SQL Server dihentikan. Untuk membuat tabel jenis ini, cukup menambahkan tanda ## di depan nama tabel: CREATE TABLE ##employees (AddressLine1 varchar(30) City varchar(30) StateProvinceID int PostalCode char(10) CountryID int Perintah DROP Perintah DROP digunakan untuk menghapus database maupun tabel. Untuk mengeksekusi perintah ini, cukup mengetikkan T-SQL seperti berikut: DROP TABLE employees NOT NULL, NULL, NULL, NULL, NULL)

Perintah ALTER Perintah ALTER digunakan untuk memanggil database maupun tabel tertentu. Untuk mengeksekusi perintah ini, cukup mengetikkan TSQL seperti berikut ini: ALTER TABLE employees 43 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

DML (DATA MANIPULATION LANGUAGE)


DML merupakan bahasa pemrograman yang digunakan untuk memasukkan, menghapus, serta meng-update data pada sebuah database. Pada bagian ini kita akan mencoba melihat penggunaan beberapa perintah DML pada SQL Server. Perintah SELECT Perintah SELECT digunakan untuk mengambil data dari tabel sebuah database. Sebagai contoh, jika kita ingin mengambil seluruh data pada tabel dataPenduduk yang terdapat di database SocialNumberDB, maka kita dapat mengeksekusi perintah berikut: USE SocialNumberDB GO SELECT * FROM dataPenduduk Perintah USE digunakan untuk mendefinisikan database yang kita gunakan untuk mencari data pada tabel tertentu, sedangkan tanda * setelah perintah SELECT digunakan untuk mengambil semua data pada tabel dataPenduduk. Perintah INSERT Perintah INSERT digunakan untuk memasukkan data pada tabel yang terdapat dalam sebuah database. Sebagai contoh, jika kita ingin menambahkan sebuah data penduduk baru pada tabel dataPenduduk, maka kita cukup mengeksekusi perintah T-SQL sebagai berikut: INSERT INTO table (column1, [column2, ... ]) VALUES (value1, [value2, ...])

44 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

INSERT INTO dataPenduduk VALUES 1, Ronaldo Aprianto, Jl. Sekarsari 5, Menikah Jika diperhatikan, untuk memasukkan nilai yang mengandung spasi didalamnya, seperti nama orang, alamat, dsb; kita cukup menambahkan tanda petik di awal dan akhir nilai tersebut.

Perintah DELETE Perintah DELETE digunakan untuk menghapus data tertentu pada sebuah tabel database. Untuk mengeksekusi perintah ini, kita cukup menggunakan perintah T-SQL sebagai berikut: DELETE FROM table_name [WHERE condition]

Sebagai contoh, jika kita ingin menghapus data seorang penduduk dengan idPenduduk = 1, dikarenakan yang bersangkutan telah meninggal dunia, maka kita cukup mengeksekusi perintah seperti ini: DELETE FROM idPenduduk=1 dataPenduduk WHERE

Sebetulnya masih banyak perintah-perintah T-SQL lainnya yang menarik untuk dipelajari, namun dikarenakan jenis dan teknik implementasinya yang begitu banyak maka rasa-rasanya tidak tepat jika hal tersebut dibahas di buku ini. Jika Anda tertarik untuk mempelajari lebih lanjut mengenai T-SQL, Anda dapat membuka SQL Server Books Online di link http://msdn.microsoft.com/en-us/library/ms189826(SQL.90).aspx.

45 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

MENGENAL TIPE DATA SQL SERVER 2005


Pada dasarnya ada 7 kategori tipe data yang disediakan oleh SQL Server: Kategori Tipe Data Exact numeric Tujuan Menyimpan pasti/tetap desimal Approximate numeric Menyimpan angka numeric dengan atau tanpa desimal Monetary Menyimpan nilai dengan desimal, biasanya digunakan untuk sebuah dengan atau angka tanpa

menyimpan data mengenai uang Date and time Character Binary Tipe data tertentu/spesial Menyimpan informasi tanggal Menyimpan karakter Menyimpan data binary Menyimpan data yang

membutuhkan penanganan khusus, seperti XML atau GUIDs (Globally Unique Identifiers)

46 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Kini mari kita telaah satu per satu tipe data tersebut agar kita dapat lebih memahami karakteristik tipe data tersebut: Tipe data Exact Numeric Tipe Data bigint int smallint tinyint decimal (p,s) Besar File 8 bytes 4 bytes 2 bytes 1 bytes 5-17 bytes tergantung tingkat presisi yang dibutuhkan numeric (p,s) 5-17 bytes tergantung tingkat presisi yang dibutuhkan -10E38+1 sampai 10E38-1 Range Nilai -2E63 sampai 2E63-1 -2E31 sampai 2E31-1 -32,768 sampai 32,767 0 sampai 255 -10E38+1 sampai 10E38-1

Tipe data Approximate Numeric Tipe Data float (p) real Besar File 4 atau 8 bytes 4 bytes Range Nilai -2.23E308 sampai 2.23E308 -3.4E38 sampai 3.4E38

47 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Tipe data Monetary Tipe Data money Besar File 8 bytes Range Nilai -922,337,203,685,477.5808 sampai 922,37,203,685,477.5807 smallmoney 4 bytes -214,748.3648 sampai 214,748.3647

Tipe data Date and Time Tipe Data datetime Besar File 8 bytes Range Nilai 1 January 1753 hingga 31 Desember 9999, dengan tingkat akurasi hingga 3.33 milliseconds smalldatetime 4 bytes 1 Januari 1900 sampai 6 Juni 2079 dengan tingkat akurasi hingga 1 menit

48 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Tipe data Character Tipe Data char (n) Besar File 1-8000 bytes Range Nilai Maksimum mencapai 8000 karakter nchar (n) varchar (n) varchar (max) 2-8000 bytes 1-8000 bytes Hingga 2 GB Maksimum 4000 karakter Mencapai 8000 karakter Maksimum mencapai 1,073,741,824 karakter nvarchar (n) nvarchar (max) 2-8000 bytes Hingga 2 GB Maksimum 4000 karakter Maksimum mencapai 536,870,912 karakter text Hingga 2 GB Maksimum mencapai 1,073,741,824 karakter ntext Hingga 2 GB Maksimum mencapai 536,870,912 karakter Tipe data Binary Tipe Data binary (n) varbinary (n) varbinary (max) image Besar File 1-8000 bytes 1-8000 bytes Hingga 2 GB Hingga 2 GB

Tipe data spesial Tipe data spesial dengan tujuan tertentu pada dasarnya terdiri dari: bit, timestamp, uniqueidentifier, sql_variant, cursor, table, dan XML.

49 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Demikianlah ketujuh kategori tipe data yang terdapat di SQL Server. Mengetahui karakteristik tipe data merupakan sebuah pekerjaan penting bagi seorang Database Developer. Mengapa? Hal ini dikarenakan pemilihan tipe data yang tepat dapat mengurangi beban kerja server komputer. Dengan menerapkan tipe data yang tepat, maka performa server pun dapat ditingkatkan secara optimal.

50 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

asdf

4
MENGENAL TEKNIK ADMINISTRASI SQL SERVER
Setelah mencoba membuat database serta tabel pada SQL Server 2005 Express Edition, kini saatnya kita mencoba beberapa teknik administrasi dan pengelolaan database yang ditawarkan oleh SQL Server. Seperti yang saya sebutkan sebelumnya, SQL Server 2005 Express Edition memiliki keterbatasan fitur administrasi, namun hal ini tidak berarti bahwa kita tidak dapat mencoba beberapa teknik administrasi dan pengelolaan database. Untuk mencoba beberapa teknik administrasi dan pengelolaan database, kita mulai dengan menginstall Sample Database yang akan kita gunakan untuk mencoba kemampuan SQL Server tersebut. Untuk menginstall Sample Database yang berisi database bernama Adventureworks, Northwind, serta Pubs kita perlu mengunduh terlebih dahulu installer tersebut. Untuk menginstall contoh database Adventureworks, masuk ke website Microsoft di link http://go.microsoft.com/fwlink/?LinkId=31046 dan unduh sebuah file bernama AdventureworksDB.msi serta file

51 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

dokumentasi bernama SQLServerDatabasesandSamplesOverview.htm. Ikuti langkah-langkah yang diberikan oleh wizard tersebut. Untuk menginstall contoh database Northwind dan Pubs, Anda dapat masuk ke website Microsoft di link

http://go.microsoft.com/fwlink/?LinkId=30196 dan unduh file bernama SQL2000SampleDB.msi. Ikuti instruksi yang diberikan oleh wizard ketika Anda menjalankan script instalasi. Setelah semua Sample Database selesai diinstall, kita akan mencoba beberapa teknik administrasi dan pengelolaan database.

MELIHAT INFORMASI DATABASE


Dengan menggunakan SSMS, kita dapat melihat informasi database yang terdapat di server komputer kita. Hal ini mencakup informasi mengenai ukuran database, kapasitas tempat penyimpanan, opsi yang digunakan, dsb. Pertama-tama kita coba melihat informasi database

SocialNumberDB yang sudah kita buat di bagian sebelumya. 1. Masuk SSMS dan lakukan autentifikasi untuk terhubung ke database

52 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

2. Klik kanan pada database SocialNumberDB > pilih opsi Reports > Standard Reports > Disk Usage

3. Setelah Anda memilih opsi tersebut, Anda pun akan diberikan informasi mengenai penggunaan disk untuk database ini

53 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Selain informasi mengenai database dan penggunaannya, kita pun dapat melihat status database pada server komputer kita. Caranya adalah dengan mengetikkan perintah sp_helpdb pada Query Window SSMS. Perintah stored procedure ini dapat memberikan info kepada Anda mengenai database yang ditangani oleh SQL Server, siapa pemiliknya, apa statusnya (online/offline), kapan waktu pembuatannya, berapa besar file database-nya, dsb. Anda dapat menggunakan Sample Database yang telah diinstal sebelumya untuk mencoba melihat bagaimana informasi sebuah database yang cukup kompleks.

SQL SERVER CAPACITY PLANNING


Jika Anda menggunakan sistem operasi Windows Server 2003 maupun Windows Server 2008, Anda pun bisa menggunakan tools administrasi bernama Performance (Administrative Tools > Performance) untuk melakukan SQL Server Capacity Planning. Istilah capacity planning dalam administrasi database merupakan sebuah proses penting untuk meramal dan mempersiapkan kebutuhan perangkat keras dari server komputer kita di masa depan. Salah satu aspek penting dalam teknik ini adalah teknik pengujian untuk melihat sebagaimana baiknya performa server dalam menangani aplikasi-aplikasi yang berjalan, khususnya aplikasi SQL Server. Berikut adalah beberapa parameter yang dapat dijadikan acuan dalam pengukuran ini:

54 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Counter Processor.% Processor Time

Keterangan Harus dibawah 75% (lebih baik jika berada di bawah 50%)

System: Processor Queue Length

Harus dibawah 2 per processor. Sebagai contoh, pada sistem yang menggunakan 2 processor, sebaiknya nilainya ada di bawah 4

Memory-Pages/sec

Harus dibawah 20 (lebih baik jika dibawah nilai 15)

Memory-Available Bytes Physical Disk-% Disk Time Physical Disk-Avg. Disk Queue Length Physical Disk-Avg. Disk Reads/sec Physical Disk-Avg. Disk Writes/sec SQL Server: Buffer Manager-Buffer Cache Hit Ratio SQL Server: Buffer Manager-Page Life Expectancy

Dibawah 50 MB Dibawah 50% Dibawah 2 per disk. Dibawah 85% Dibawah 85% Harus melebihi nilai 90% (lebih baik jika mencapai kisaran 99%) Digunakan untuk mengukur performa

memory komputer. Sebaiknya diatas 300 detik

MENGATUR HAK PENGGUNA SQL SERVER


Permissions/Hak pengguna berfungsi untuk mengatur apakah tabel sebuah database tersebut boleh diakses, dimanipulasi, dan dikelola oleh pengguna tertentu maka kita dapat menggunakan sebuah perintah T-SQL untuk mengatur hal tersebut. Pada dasarnya, terdapat 7 permissions yang dapat diatur untuk sebuah tabel dalam database:

55 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Jenis Permission CREATE TABLE

Tujuan Memberikan hak untuk membuat tabel dalam sebuah database

ALTER TABLE

Memberikan hak untuk mengubah struktur table dalam sebuah database

SELECT

Mengijinkan pengguna untuk mengambil data dari tabel yang dipilih

INSERT

Mengijinkan pengguna untuk memasukkan data pada tabel tertentu

UPDATE

Mengijinkan pengguna untuk melakukan modifikasi tertentu terhadap data pada tabel

DELETE

Mengjinkan pengguna untuk menghapus data pada tabel tertentu

REFERENCES

Mengijinkan pengguna untuk membuat foreign key constraints

Untuk memberikan hak/permissions tersebut kepada pengguna tertentu, maka berikut adalah sintaks T-SQL yang dapat digunakan:

56 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Sebagai contoh, jika kita ingin memberikan hak untuk melakukan SELECT, INSERT, UPDATE, DELETE pada tabel dataPenduduk maka kita dapat mengeksekusi perintah berikut: GRANT SELECT, INSERT, UPDATE, dataPenduduk TO <database role> DELETE ON

MELAKUKAN BACKUP PADA DATABASE


Backup merupakan sebuah proses penting dalam pengelolaan database. Proses ini mengantisipasi hilangnya database yang diakibatkan oleh bencana seperti kerusakan perangkat keras komputer, bencana alam, dsb. Pada dasarnya, metoda backup pada database dapat dibagi menjadi beberapa bagian, kali ini saya akan membahas dua metoda backup, yaitu Full Backup, Differential Backup, serta Transaction Log Backup saja. Full Backup Tujuan dari metoda ini adalah untuk menyimpan semua data yang tersimpan dalam database. Backup devices menyelesaikan tugas ini dengan melakukan ekstrak pada setiap extent yang terdapat di database. Namun, metoda ini pun dapat menjadi time consuming jika skala data pada database sudah terlalu besar. Untuk melakukan full backup, kita perlu mendefinisikan terlebih dahulu Recovery Model database yang akan kita backup: 1. Masuk ke SSMS dan lakukan autentifikasi

57 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

2. Klik kanan pada database yang akan di-backup, pilih opsi properties, masuk ke tab Options, dan ubah Recovery Model menjadi Full

Setelah mendefinisikan Recovery Model database, maka kita dapat menggunakan T-SQL maupun melalui GUI SSMS untuk melakukan Full Backup:

58 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Dengan menggunakan GUI SSMS: 1. Pertama, kita perlu membuat sebuah backup devices baru yang berfungsi untuk menyimpan database yang akan di-backup

59 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

2. Beri nama Backup Devices, serta definisikan lokasi penyimpanan backup

3. Klik tombol OK

60 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Expand tab database yang akan di-backup > klik kanan, pilih opsi Tasks > Back Up

5. Pada bagian Destination, mungkin sudah ada disk device yang didefinisikan sebelumnya. Hapus saja disk tersebut, kemudian klik tombol Add. Pada pop-up windows yang muncul, pilih Backup Devices yang sudah dibuat sebelumnya

6. Klik tombol OK 61 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

7. Masuk ke tab Options, dan pilih Overwrite All Existing Backup Sets. Opsi ini akan menginisialisasi device baru atau menimpa device yang sudah tersedia sebelumnya 8. Pilih opsi Verify Backup When Finished untuk memverifikasi backup copy yang sudah terbentuk dan klik OK 9. Setelah semua proses selesai, expand Backup Devices di bawah Server Objects pada Object Explorer. Pilih Backup Device Anda, dan klik kanan kemudian pilih opsi properties. Pada bagian Media Contents page, kini Anda dapat melihat full backup dari database yang backup sebelumnya

Dengan menggunakan T-SQL:


BACKUP DATABASE <database name> TO DISK = <directory>\<filename> WITH INIT

62 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Differential Backup Metoda ini digunakan untuk merekam semua perubahan yang terjadi pada database sejak full backup terakhir dilakukan. Sebagai contoh, jika Anda melakukan full backup pada hari Senin dan differential backup pada hari Selasa, maka differential akan mencatat semua perubahan yang terjadi sejak full backup selesai dilakukan pada hari Senin. Untuk melakukan Differential backup, Anda hanya perlu mengubah satu buah langkah dari langkah sebelumnya. Anda cukup mengganti Backup Type database Anda menjadi tipe Differential:

63 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Untuk melakukan metoda backup ini dengan menggunakan T-SQL, maka cukup menggunakan perintah:
BACKUP DATABASE <database name> TO DISK = <directory>\<filename> WITH DIFFERENTIAL

Transaction Log Backup Metoda ini sebetulnya tidak ada bedanya dengan metoda Full backup maupun Differential backup sebelumnya, hanya saja, kali ini kita akan mem-backup file log dari database yang kita miliki. Sebagaimana disebutkan dalam bab sebelumnya, file log berfungsi sebagai rekam jejak aktivitas manipulasi yang dilakukan terhadap database. Oleh karenanya, melakukan backup terhadap Transaction Log Backup pun menjadi sebuah metoda penting dalam melakukan backup. Untuk melakukan backup dengan tipe ini, kita cukup memilih database yang akan di-backup, klik kanan dan pilih opsi Tasks > Backup. Pada Backup Type, kita pilih opsi Transaction Log. Untuk melakukan metoda backup ini dengan menggunakan T-SQL, maka cukup menggunakan perintah:
BACKUP LOG <database name> TO DISK = <directory>\<filename> WITH INIT

64 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

asdf

5
MEMBANGUN APLIKASI E-COMMERCE
Setelah mengenal beberapa teknik pembuatan database, tabel, maupun teknik administrasi serta pengelolaan database, kini saatnya kita mencoba mengimplementasikan pengetahuan tersebut dengan membangun sebuah aplikasi e-commerce (web) yang menggunakan DBMS SQL Server 2005 Express Edition. Aplikasi e-commerce yang akan digunakan dalam praktek kali ini adalah NopCommerce, sedangkan DBMS-nya menggunakan SQL Server 2005 Express Edition. Jika komputer Anda terhubung ke Internet, untuk memudahkan proses instalasi, kita akan menggunakan Microsoft Web Platform Installer (WPI) untuk proses instalasi nopCommerce. Microsoft Web Platform merupakan salah satu teknologi Microsoft yang memberikan framework, web server, database serta tools yang dibutuhkan untuk membangun dan menjalankan website dan aplikasi di atas Windows OS. Pertama-tama, masuk ke web Microsoft di link

http://microsoft.com/web dan unduh WPI di link yang disediakan. 65 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Klik tombol Download yang tersedia.

66 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Unduh file WPI ke komputer Anda, dan ikuti proses instalasi yang diberikan melalui wizard-nya. Setelah WPI sukses terinstall di komputer Anda, kini saatnya kita mencoba menginstall nopCommerce di komputer Anda. Sebelum kita memulai menginstall nopCommerce, ada baiknya kita mencoba membuat sebuah user login pengguna baru di DBMS SQL Server 2005 Express Edition dan sebuah database baru untuk menyimpan informasi dari nopCommerce: 1. Buka SSMS dan lakukan autentifikasi user untuk terhubung ke DBMS 2. Buat sebuah database bernama nopcommerce pada SSMS 3. Setelah database terbuat, kini saatnya kita membuat sebuah user login baru yang memiliki hak untuk mengubah database nopcommerce tersebut. Pada Object Explorer, pilih tab Security > Logins

67 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Klik kanan pada tab Logins dan pilih opsi New Logins

68 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

5. Isi kolom Login name (pada contoh ini, saya akan gunakan nopcommerce untuk username dan password, ini contoh yang buruk, tidak usah diikuti). Jangan lupa untuk memilih mode SQL Server authentification. Untuk memudahkan, kita hapus centang pada opsi Enforce password expiration dan User must change password at next login. Jangan lupa untuk mengubah Default database menjadi database yang telah kita buat sebelumnya, yaitu nopcommerce

6. Disconnect SSMS, kemudian kembali lakukan koneksi, namun kali ini coba untuk login dengan menggunakan user login yang telah kita buat sebelumnya. Jika terjadi error, coba lakukan langkah 7

69 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

7. Jika Anda tidak mengikuti proses instalasi SQL Server 2005 Express Edition yang terdapat di buku ini (mungkin dikarenakan komputer Anda sudah terinstall SQL Server sebelumnya) ataupun mengalami kesalahan saat melakukan instalasi yang menyebabkan autentifikasi SQL Server hanya dapat dilakukan dengan mode Windows Authentification, jangan khawatir. Kita dapat mengubah hal ini dengan mengatur kembali mode autentifikasi SQL Server menjadi Mixed Mode. Masuk ke SSMS dengan mode Windows Authentification, klik kanan pada Server di Object Explorer > pilih opsi Properties > masuk ke tab Security > centang opsi SQL Server and Windows Authentification mode

70 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Setelah sebuah user login baru selesai dibuat, serta database yang dibutuhkan pun selesai dibuat, maka kini saatnya kita beranjak ke WPI untuk melakukan instalasi nopCommerce. nopCommerce merupakan sebuah aplikasi e-commerce yang cukup user friendly dan mudah dikelola. Aplikasi ini yang akan kita coba untuk bangun dengan menggunakan WPI dan DBMS SQL Server 2005 Express Edition: 1. Buka WPI yang sudah diinstall sebelumnya di komputer Anda 2. Arahkan tab ke Web Applications > eCommerce > centang opsi nopCommerce

3. Klik tombol Install

71 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

4. Pada tampilan halaman selanjutnya, klik tombol I Accept

5. Pada tampilan halaman selanjutnya, kita perlu mendefinisikan beberapa point untuk mempublish website e-commerce kita. 6. Isikan Site Name kita, misalnya kita beri nama nopcommerce. Ketika kita mengisi Site Name, maka secara otomatis Application Pool pun akan terisi dengan nama dari Site Name kita (nopcommerce)

72 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

7. Pada kolom Physical Path, kita isikan lokasi file nopCommerce kita. Biasanya, pada IIS di Windows, tersedia folder inetpub di drive C:\, oleh karenanya kolom ini pun kita arahkan ke lokasi tersebut

C:\Inetpub\nopcommerce

8. Pada kolom IP Address, kita isikan network interface dimana kita memasang/menghosting website kita. Pada kasus ini, IP Address komputer saya adalah 117.201., maka saya pun mengisikan alamat tersebut di kolom isian yang tersedia. Pada kolom Port, kita isikan angka 80

9. Pada kolom Hostname, kita isikan nama nopcommerce.local. Jika Anda mempunyai nama domain sendiri serta sebuah IP Public, Anda dapat mengisi kolom ini dengan nama domain Anda untuk kemudian dipublish ke Internet

73 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

10. Setelah nopCommerce selesai diunduh melalui WPI, kini saatnya melakukan proses instalasi. Sebelum melakukan proses instalasi, kita perlu membuat sebuah virtual host (karena website e-commerce tersebut akan dijalankan di komputer kita sendiri). Buka Windows Explorer Anda dan masuk ke C:\Windows\System32\drivers\etc. Buka file hosts dengan notepad, dan tambahkan satu baris definisi alamat jaringan (192.168.137.1 nopcommerce.local) untuk menjalankan

proses instalasi nopCommerce di komputer Anda sendiri.

11. Save file ini dan tutup Notepad Anda 74 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

12. Sebelum melakukan instalasi nopCommerce melalui browser, kita perlu melakukan sebuah langkah penting untuk membuat folder nopcommerce yang sudah terbuat secara otomatis sebelumnya dapat diakses untuk keperluan instalasi. Pertama, masuk ke lokasi dimana folder nopcommerce dibuat (C:\Inetpub). Klik kanan pada folder nopcommerce dan pilih opsi Properties

13. Masuk ke tab Web Sharing, pilih opsi Share this folder. Centang opsi Read, Write, dan Scripts

75 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

14. Setelah kita mendefinisikan bahwa folder ini bisa diakses, kini saatnya kita melakukan proses instalasi. Buka browser Anda (disini saya menggunakan browser IE8), dan masukkan alamat

http://nopcommerce.local/ maka tampilan pertama proses instalasi nopCommerce akan terlihat sebagaimana berikut:

15. Klik tombol Next

76 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

16. Pada proses kedua instalasi, masukkan localhost/SQLEXPRESS pada box SQL Server name or IP address. Gunakan user login yang telah kita buat sebelumnya di SQL Server 2005 Express Edition (username: nopcommerce, password: nopcommerce)

17. Klik tombol Next

77 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

18. Pada tampilan selanjutnya, Anda dapat membuat database baru dan mengisikan nama database baru tersebut (terlihat di contoh) atau bisa juga menggunakan database yang telah kita buat sebelumnya. Centang pilihan Create sample data untuk melihat contoh-contoh item pada web e-commerce.

19. Klik tombol Next 20. Jika sudah tidak ada masalah, maka tampilan terakhir dari proses instalasi adalah notifikasi bahwa proses instalasi telah berhasil dilakukan. Klik tombol Finish

78 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

21. Anda pun akan langsung diarahkan ke halaman utama nopCommerce

22. Klik tombol Administration yang terletak di pojok kanan atas halaman web untuk masuk ke menu administrasi, masukkan username: admin@yourstore.com dan password: admin. Ini adalah kombinasi username-password default dari nopCommerce. 23. Voila! Kini dapat mulai melakukan kustomisasi web e-commerce Anda untuk mempercantik tampilan web Anda maupun mengisinya dengan data-data mengenai produk yang akan Anda jual.

Mudah bukan? Salah satu keuntungan dari penggunaan DBMS SQL Server adalah kemudahan administrasi dan pengelolaan database yang kita gunakan. Selama kita mempunyai hak sebagai administrator, kita 79 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

dapat dengan mudah membuat, mengedit, menghapus user login, tabel, maupun database. Jika dibandingkan dengan MySQL, proses manipulasi data di SQL Server jauh lebih mudah, dan dengan kehadiran SSMS proses tersebut pun membuat pengguna komputer tidak perlu menghapalkan sintaks bahasa pemrograman.

80 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

asdf

5
PENUTUP
Tutorial singkat pada bab sebelumnya mengakhiri buku singkat dan ringan ini. Tentunya masih banyak hal yang bisa dilakukan dengan SQL Server 2005 Express Edition dalam mengelola database yang akan digunakan oleh aplikasi yang kita bangun/kembangkan. SQL Server dapat saja digabungkan dengan aplikasi ASP.NET, Windows, Silverlight, dsb. Pada SQL Server 2008, ada fitur baru menarik lainnya, dimana terdapat sebuah tipe data spasial yang mampu menampung informasi geografis suatu wilayah. Hal ini pun dapat kita kembangkan untuk membuat sebuah aplikasi yang berhubungan dengan tipe data tersebut. Pada dasarnya SQL Server bukanlah berupa aplikasi end-user seperti layaknya MS Access4, dimana Anda dapat langsung membuat form database yang bersifat end-user. Dalam hal ini, SQL Server lebih bersifat sebagai elemen penunjang pengelolaan database untuk membangun aplikasi-aplikasi lainnya.

Anda dapat pula berkenalan dengan MS Access dengan membaca buku gratis yang dibuat oleh salah satu rekan MSP saya, Dani R. Taufani, yang berjudul: Mengolah Data dengan Microsoft Office Access 2007. Buku tersebut dapat diunduh melalui link http://mugi.or.id/media/p/3365/download.aspx

81 | B e r m a i n D a t a d e n g a n S Q L S e r v e r

Kemampuan SQL Server tentu saja belum dibahas sepenuhnya di buku ini, begitupun dengan pembahasan mengenai pengembangan aplikasi yang menggunakan DBMS SQL Server. Database merupakan sebuah objek penting dalam dunia teknologi informasi yang tentunya proses pembelajarannya pun membutuhkan waktu yang cukup panjang dan penerapannya membutuhkan berbagai proses trial and error. Dengan berbagai fitur administrasi serta pengelolaan database yang mudah, Anda dapat mengeksplorasi lebih jauh SQL Server untuk digunakan dalam mengembangkan aplikasi-aplikasi bisnis maupun industri. Akhir kata, terima kasih telah membaca buku ini, semoga buku ini bisa bermanfaat bagi rekan-rekan sekalian.

82 | B e r m a i n D a t a d e n g a n S Q L S e r v e r