140
Database Server | Desy & Maya _^

Microsoft SQL Server Warna

Embed Size (px)

Citation preview

Page 1: Microsoft SQL Server Warna

|

Page 2: Microsoft SQL Server Warna

DAFTAR ISI

Daftar isi............................................................................................. 2

1.1. Pengenalan Microsoft SQL Server.................................... 3

1.1.1.Sejarah Microsoft SQL Server................................. 3

1.1.2.Pengantar Microsoft SQL Server 2000.................... 4

1.1.3.Pengantar Microsoft SQL Server 2005.................... 8

1.1.3.1. Business Intelligence dengan SQL Server 2005

Membuat Data Menjadi Bermakna........... 10

1.2. Cara Instal Microsoft SQL Server...................................... 16

1.2.1.Cara Instal Microsoft SQL Server 2000................... 16

1.2.2.Cara Instal Microsoft SQL Server 2005................... 22

1.2.3. Instalasi SQL Server 7.0 pada komputer pribadi

( bukan server )...................................................... 35

1.3. TSQL................................................................................. 42

1.3.1.Pengertian TSQL..................................................... 42

1.3.2.Syntak SQL dan Fungsinya..................................... 45

1.3.3.Perintah – perintah SQL.......................................... 69

Daftar Pustaka ................................................................................... 103

|

Page 3: Microsoft SQL Server Warna

1.1 Pengenalan Microsoft SQL Server

1.1.1. Sejarah Microsoft SQL Server

Pada tahun 1988, Microsoft mengeluarkan versi pertama dari SQL Server. Pada saat

itu masih didesain untuk platform OS/2 dan didevelop bersama antara Microsoft dengan

Sybase. Selama awal tahun 1990an, Microsoft mulai untuk membuat versi baru dari SQL

Server untuk platform NT-nya. Selama proses development tersebut Microsoft memutuskan

bahwa Microsoft SQL Server ini harus bisa terintegrasi dengan kuat dengan sistem operasi

NT-nya. Pada tahun 1993, Windows NT 3.1 dan SQL Server 4.2 untuk NT dirilis oleh

Microsoft. Target Microsoft untuk mengkombinasikan antara performa database server yang

tinggi serta kemudahan cara penggunaan dan administrasinya rupanya tercapai melalui SQL

Server ini.

Microsoft terus berhasil memasarkan SQL Server dan menjadi database server yang

terkenal. Pada tahun 1994, Microsoft dan Sybase secara resmi mengakhiri kerjasamanya. Di

tahun 1995 Microsoft merilis versi 6.0 dari SQL Server. Versi ini merupakan versi yang

penting karena sebagian besar merupakan hasil tulis ulang dan juga redesain dari core

technology sebelumnya. Versi 6.0 ini menawarkan peningkatan pada performa, built-in

replication dan juga administrasi yang tersentralisasi.

Pada tahun 1996, Microsoft merilis SQL Server versi 6.5 yang berisi berbagai macam

kemampuan tambahan dan juga fitur-fitur baru. Pada tahun 1997, Microsoft merilis SQL

Server 6.5 Enterprise Edition. SQL Server 7.0 dirilis Microsoft pada tahun 1998 dan database

engine-nya ditulis ulang agar lebih optimal. Akhirnya tahun 2000 Microsoft mengeluarkan

SQL Server 2000 yang merupakan versi yang banyak digunakan sampai tulisan ini

dipublikasikan. Versi SQL Server 2000 ini berbasis pada framework yang ada pada versi 7.0

sebelumnya.

|

Page 4: Microsoft SQL Server Warna

1.1.2. Pengantar Microsoft SQL Server 2000

MS SQL Server adalah salah satu produk Relational Database Management System

(RDBMS) populer saat ini. Fungsi utamanya adalah sebagai database server yang mengatur

semua proses penyimpanan data dan transaksi suatu aplikasi. Popularitas SQL Server akhir-

akhir ini mulai menanjak dan setara dengan pesaing terdekatnya yaitu Oracle 9i dan Oracle

10g. Saat ini versi terbaru adalah SQL Server 2000, sedangkan SQL Server 2005 masih

dalam tahap Beta version. Versi 2000 memiliki feature-feature lengkap untuk membangun

aplikasi mulai skala kecil sampai dengan tingkat enterprise.

SQL Server 2000 memiliki beberapa versi antara lain :

SQL Server Personal Edition

SQL Server Developer Edition

SQL Server Enterprise Edition

SQL Server Standard Edition

SQL Server Desktop Engine

SQL Server for Windows CE Edition

Masing masing versi memiliki perbedaan dalam hal maksimum ukuran database,

RAM, jumlah koneksi, serta berbagai feature lanjutan. Versi Personal, Developer, dan

Desktop dapat diinstall di OS Desktop seperti Windows 2000 Professioanal dan Xp,

sedangkan versi Enterprise dan Standard hanya dapat diinstal di Windows 2000/2003 Server

serta NT Server. Versi Windows CE biasa digunakan untuk PDA dan Pocket PC.

Interface SQL Server

Berikut interface utama saat Anda bekerja dengan SQL Server:

jadwal tugas pemeliharaan umum atau membuat dan memodifikasi struktur database

individu.

|

Page 5: Microsoft SQL Server Warna

Di dalam folder database ditampilkan berbagai database yang ada. Database master,

model, msdb, dan tempdb merupakan default system database yang diperlukan agar SQL

Server dapat berfungsi baik. Keempat database ini tidak boleh dihapus ataupun dimodifikasi

|

Page 6: Microsoft SQL Server Warna

tanpa pengetahuan yang mencukupi tentang sistem SQL Server. Sedangkan NorthWind dan

pubs adalah database sampel yang dapat digunakan untuk berlatih perintah SQL maupun

administration job. Dalam tutorial selanjutnya, kita akan banyak menggunakan NorthWind

sebagai kasus.

Di dalam folder Security terdapat tool Login yang berisi daftar user di dalam

database. Di bagian ini semua manajemen menyangkut user account dilakukan. Fungsi-fungsi

lain dalam Enterprise Manager akan dibahas pada artikel berikutnya tentang SQL Server

Lanjutan.

Query Analyzer Tool ini merupakan interface utama dalam melakukan

pemrograman di SQL Server. Bahasa yang digunakan adalah Transact SQL (T-SQL). Anda

dapat membuat perintah untuk mengambil data, sortir, manipulasi data serta melakukan

perhitungan tertentu terhadap sekumpulan data dalam database. Script yang telah dibuat dapat

disimpan sebagai View ataupun Stored Procedure, sesuai dengan kebutuhan dalam

pembuatan aplikasi.

Tutorial Ini cara yang bagus untuk cepat menarik informasi dari database sebagai

respons atas permintaan pengguna, uji query sebelum menerapkan mereka dalam aplikasi

lain, membuat / memodifikasi disimpan prosedur dan melaksanakan tugas-tugas administrasi.

|

Page 7: Microsoft SQL Server Warna

Query Analyser juga dapat digunakan untuk membuat script sebuah database maupun obyek-obyek di dalamnya. Script ini selanjutnya dapat dijalankan di server lain untuk membuat database yang serupa, atau digunakan dalam sebuah aplikasi untuk mendukung pemrograman. Caranya adalah menklik kanan sebuah obyek, dan pilih Script to New Windows.

SQL profiler menyediakan jendela ke inner pekerjaan dari database Anda. Anda

dapat memantau berbagai jenis event yang berbeda dan melihat kinerja database secara real

time. SQL profiler memungkinkan Anda untuk menangkap dan sistem replay "jejak" bahwa

log berbagai kegiatan. Ini adalah alat yang hebat untuk mengoptimalkan database dengan

masalah kinerja atau memecahkan masalah tertentu.

Service Manager digunakan untuk mengontrol MSSQLSERVER (SQL Server utama

proses), MSDTC (Microsoft Distributed Transaction Coordinator) dan SQLServer Agent

Proses. Sebuah ikon untuk layanan ini biasanya berada dalam baki sistem mesin yang

menjalankan SQL Server. Anda dapat menggunakan Service Manager untuk memulai,

menghentikan atau menghentikan sementara salah satu dari layanan ini.

Ada 3 service standar dalam setiap instalasi default SQL Server:

Distributed Transaction Coordinator

SQL Server

SQL Server Agent

Data Transformation Services (DTS) memberikan metode yang sangat fleksibel

untuk mengimpor dan mengekspor data antara SQL Server Microsoft dan instalasi berbagai

|

Page 8: Microsoft SQL Server Warna

macam format lain. DTS aplikasi yang paling sering digunakan adalah "Impor dan Ekspor

Data" wizard ditemukan dalam grup program SQL Server.

Fitur-fitur menarik pada SQL Server 2000 Berikut ini adalah beberapa fitur yang

menarik untuk diangkat dari sekian banyak fitur yang ada pada SQL Server 2000.

Diantaranya adalah:

XML Support

Multi-Instance Support

Data Warehousing/Business Intelligence Improvements

Performance and Scalability Improvements

Query Analyzer Improvements

DTS Improvements

Transact SQL Enhancement

XML Support

XML saat ini sudah menjadi standar dalam dunia bisnis untuk komunikasi dan juga

sharing informasi. SQL Server dalam hal ini sudah mendukung format XML. Dengan ini

Anda bisa menyimpan dokumen XML dalam suatu tabel, meng-query data ke dalam format

XML melalui Transact-SQL dan lain sebagainya.

Multi-Instance Support

Fitur ini memungkinkan Anda untuk menjalankan beberapa database engine SQL

Server pada mesin yang sama. Fitur ini sebelumnya juga sudah ada pada Oracle Database.

Fitur ini sangat menarik karena memungkinkan seorang DBA (Database Administrator)

untuk mengkombinasikan beberapa lingkungan misalnya untuk development, testing dan

produksi dalam satu mesin yang sama. Ini juga menarik bagi penyedia jasa hosting (baik ASP

maupun ISP) dimana mereka dapat menghost beberapa aplikasi dalam satu mesin yang sama.

1.1.3. Pengantar Microsoft SQL Server 2005

|

Page 9: Microsoft SQL Server Warna

SQL Server digunakan sebagai database server. Data yang ada di SQL server akan

diakses oleh user lewat aplikasi khusus seperti aplikasi yang ada di supermarket, sistem

reservasi pesawat, aplikasi internet banking seperti klikbca atau menggunakan aplikasi

bawaan SQL Server 2005 yaitu Query Window.

Berdasarkan tipe datanya, database server bisa digolongkan sebagai:

1. OLTP: Online Transaction Processing (Transaksi)

2. OLAP: Online Analyze Processing (Analisa)

Contoh OLTP adalah transaksi transfer uang di atm, mengambil no. urut saat antri di

telkom dsb. Contoh OLAP adalah summary laporan penjualan saham, contoh lain  report

penjualan bulanan. SQL Server 2005 dapat digunakan sebagai OLTP atau OLAP server.

Query Window Merupakan aplikasi bawaan SQL Server. Di aplikasi ini Anda

mengetikkan perintah-perintah SQL (Structured Query Langguage) dan menjalankannya.

SQL Server akan memproses perintah tersebut dan menampilkan hasilnya di layar SQL

Server. Perintah-perintah dasar SQL akan dibahas lebih lanjut.

Database

Database menyimpan data, tabel dan semua object yang diperlukan SQL Server.

Berikut ini object-object yang ada di Database:

1. Tabel : Kumpulan baris-baris data yang dikelompokkan dalam kolom tertentu.

2. Data Type: Tipe data yang diijinkan pada kolom.

3. Index: Penyimpanan data dalam urutan tertentu.

4. View: Menyediakan cara lain untuk menampilkan tabel. Dengan view tabel kompleks

bisa disajikan dengan sederhana.

5. Stored Procedure: Kumpulan perintah SQL untuk tugas tertentu.

6. Function: Mirip dengan Stored Procedure tetapi function bisa mengembalikan suatu

nilai.

7. Constraint: Cara SQL mempertahankan integritas Data.

|

Page 10: Microsoft SQL Server Warna

System Database

Saat selesai menginstall SQL Server, akan ditemukan 4 system database, yaitu:

1. Master

2. MSDB

3. Model

4. Temp

Ke empat database ini dipergunakan SQL Server untuk administrasi, maintain dan

semua aspek yang berhubungan dengan SQL Server. Berikut penjelasannya :

MASTER database adalah database yang paling penting. Didalamnya terdapat

informasi semua user yang boleh login ke SQL Server, informasi tentang database, berisi

store procedure-store procedure system yang penting. Kehilangan database master membuat

SQL Server tidak dapat diakses.

MSDB database digunakan untuk menyimpan informasi yang berhubungan dengan

jobs, alert dan operator (akan dibahas kemudian).

MODEL database adalah "blue print" dari setiap database baru yang akan

dibuat.Ukuran setiap database baru akan mengikuti/sama dengan ukuran database model.

Object yang dimasukkan ke database model akan ikut dimasukkan ke database baru. Jika

object tersebut adalah tabel dan tabel tersebut mempunyai data, maka data tersebut akan

dicopy juga ke database baru. Database temp sebagai temporary database. Object database

yang dimasukan ke database temp akan hilang secara otomatis saat keluar aplikasi.

Diluar ke empat system database tersebut adalah user database, kecuali Distribution.

Database ini muncul setelah SQL Server dikonfigurasi untuk replikasi.

|

Page 11: Microsoft SQL Server Warna

1.1.3.1. Business Intelligence dengan SQL Server 2005

Membuat Data Menjadi Bermakna

Tawaran Baru SQL Server 2005

Sejak Microsoft merelease SQL Server versi 7, sebenarnya kemampuan BI telah

mulai dibundle dalam produk ini. Namun kemampuan BI yang benar-benar lengkap baru

didapat dalam SQL Server 2005. Kabar baiknya adalah feature BI ini telah tersedia dalam

produknya tanpa harus membeli add on tambahan.

Proses BI dalam SQL Server 2005 terbagi dalam 3 tahap yaitu Integrasi, Analisis, dan

Penyajian laporan.

|

Page 12: Microsoft SQL Server Warna

|

Page 13: Microsoft SQL Server Warna

Ketiga pilar tersebut merupakan satru kesatuan solusi BI yang terdapat dalam SQL

Server 2005. Sangat jelas terlihat bahwa ternyata proses BI merupakan sebuah perjalanan

panjang sebelum akhirnya data disajikan untuk mendukung pengambilan keputusan.

Integrasi Data: Kunci Keberhasilan BI

Tahap ini merupakan proses mengintegrasikan berbagai data dari berbagai sumber

dan memasukkanya ke dalam data warehouse. Data dari sistem operasional divalidasi,

diekstrak, diringkas, atau diberikan formula tertentu sesuai dengan hasil analisis bisnis.

Proses ini juga dikenal sebagai extract, transform, loading (ETL) yang menggunakan SQL

Server Intgration Services (SSIS). Sumber data tidak terbatas pada SQL Server saja, tetapi

uga Oracle, DB2, flat file, XML, dan semua sumber data yang kompatibel dengan ODBC

maupun OLEDB.

Tentu saja proses ini dilakukan setelah system analyst menghasilkan jenis-jenis data

yang harus diintegrasikan, serta dari mana data tersebut dapat diperoleh. Dalam SSIS tersedia

perangkat untuk membuat data source yang mampu mengambil data dari berbagai sumber,

dan tidak terbatas pada format produk Microsoft.

|

Page 14: Microsoft SQL Server Warna

Proses integrasi data tidak hanya sekedar melakukan import dari data source, tetapi

termasuk juga proses validasi, agregasi, dan

perhitungan menggunakan berbagai formula yang

dikehendaki.

|

Page 15: Microsoft SQL Server Warna

Dengan proses ini maka data yang dimasukkan ke data warehouse benar-benar siap

untuk dianalisis. Artinya dalam proses penyajian laporan tidak diperlukan lagi penggunaan

formula yang rumit. Hal ini tentu sangat meningkatkan kecepatan penyajian data, disamping

menyederhanakan proses pembuatan laporan.

Dalam gambar 3 terlihat tahap-tahap mengekstrak data yang dimulai dari

pengambilan data dari data source, dilanjutkan proses perhitungan harga perbaris transaksi

penjualan, kemudian dikalikan dengan jumlah pembelian, dan selanjutnya dihitung harga

rata-ratanya sebelum akhirnya hasil perhitungan tersebut diload ke data warehouse.

Proses pembuatan package SSIS ini menggunakan SSIS designer yang dilengkapi

dengan toolbox SSIS, sehingga mempermudah pembuatan package secara visual. Developer

dapat memasukkan formula dan code ke dalam tiap tahap pengambilan data tersebut. Selain

itu tersedia juga control flow yang digunakan untuk mengatur proses looping berdasarkan

kondisi yang telah ditentukan. Developer juga dapat menciptakan event handler yang

menangkap berbagai kejadian selama package tersebut dieksekusi. Misalnya memasukkan

pesan atau tindakan tertentu ketika terjadi error dan selesainya eksekusi.

Analysis Services dan Data Mining

Dalam tahap ini data di dalam data warehouse dianalisis menggunakan Analysis

Services. Analysis Services merupakan alat bantu yang berisi berbagai metode data mining

dan OLAP (online analytical processing). SQL Server 2005 menyediakan 7 metode statistic

|

Page 16: Microsoft SQL Server Warna

untuk membaca kecenderungan data dalam proses data mining. OLAP menyediakan cara

mudah untuk membuat cube, yang merupakan representasi dari berbagai ukuran (measures)

dan dimensi (dimension) data yang akan dianalisis.

Contoh praktisnya adalah tingkat penjualan merupakan measures, sedangkan lokasi

geografis, dan profil pelanggan digolongkan sebagai dimension. Dengan demikian dapat

dianalis pengaruh lokasi dan profil pelanggan terhadap tingkat penjualan produk.

Perangkat Analysis Service di SQL 2005 merupakan salah satu implementasi dari

konsep OLAP. Mungkin para developer masih bertanya, mengapa diperlukan Analysis

Services? Apakah T-SQL query saja tidak cukup untuk menyajikan data?

Developer sering dihadapkan pada kondisi dimana bentuk dan isi reporting yang

diinginkan user sering berubah-ubah. Selain itu sering muncul kebutuhan report baru,

sehingga dilakukan pembuatan query berulang-ulang. Analysis Services merupakan solusi

dari masalah ini. Developer dapat membuat berbagai cube yang merupakan representasi dari

berbagai variabel report yang diinginkan user. Dengan demikian dalam proses reporting

tinggal menggunakan client tools seperti Excell atau Sharepoint dan dapat melakukan drag

and drop secara visual dari cube yang telah tersedia di Analysis Services Server. User dapat

membuat reportnya sendiri untuk melihat perbandingan penjualan antar produk, atau melihat

perbandingan volume penjualan di berbagai area geografis yang berbeda.

Improvement menonjol dari Analysis Services adalah Key Performance Indicator

(KPI). Terminologi ini sering digunakan para pelaku bisnis untuk mengukur pencapaian

|

Page 17: Microsoft SQL Server Warna

kinerja setiap karyawan, departemen, atau perusahaan secara keseluruhan. Developer dapat

mendefinisikan KPI yang telah disepakati, dan digunakan untuk mengukur apakah data yang

tersedia telah memenuhi kriteria tertentu. Penggunaan praktisnya misalnya untuk

mengevaluasi apakah setiap kota atau dealer telah mencapai target penjualan yang ditetapkan.

Dalam proses data mining, SQL 2005 menyediakan 7 metode statistik yang dapat

digunakan untuk menganalisis data. Setiap metode memiliki kekurangan dan kelebihannya

masing-masing,

Ketika

dihadapkan pada masalah peramalan penjualan, maka teknik regresi atau time series lebih

tepat digunakan. Sedangkan untuk pengambilan keputusan berdasarkan berbagai kriteria dan

alternatif, teknik decision trees lebih tepat.

Menyajikan Data dengan Reporting Services

Reporting Services merupakan media utama dalam tahap penyajian laporan.

Perangkat ini telah tersedia dalam SQL Server 2005 dan terintegrasi dengan Business

Intelligence Development Studio. Di sisi server terdapat Report Server yang melayani

pengolahan dan penampilan laporan untuk end user. Reporting Service berjalan di web

browser sehingga sangat mudah untuk didistribusikan di intranet. Dengan demikian tidak

terdapat komponen yang harus diinstal di sisi klien.

|

Page 18: Microsoft SQL Server Warna

Developer dapat menyediakan berbagai format laporan dan meletakkannya di Report

Server sehingga dapat dibaca oleh end user. Selain itu pengguna juga dapat membuat laporan

sendiri menggunakan Report Builder. Tentu saja berbagai query dan tabel yang rumit harus

disiapkan dahulu oleh developer, sehingga pengguna dapat menggunakannya dengan lebih

intuitif.

Alternatif lain dalam penyajian data adalah mengintegrasikannya dalam sebuah portal.

Infrastruktur yang tersedia adalah Sharepoint Portal yang sudah terintegrasi dengan Windows

Server 2003 dan SQL Server 2005. Semua sajian data dari Reporting Services, Analysis

Services, dan Excel dapat dengan mudah ditampilkan dan diintegrasikan dalam BI Portal.

Semua tersaji dalam web browser, sehingga sangat memudahkan deployment dan

maintenance.

|

Page 19: Microsoft SQL Server Warna

1.2.Cara Instalasi Microsoft SQL Server

1.2.1. Instalasi Microsoft SQL Server 2000

Dalam contoh ini penulis menggunakan versi personal, yang sudah mencukupi untuk

bekerja dan membuat aplikasi. Versi ini 100% kompatibel dengan versi lain yang lebih tinggi

(Standard dan Enterprise). Database dan semua obyeknya dapat direstore ke versi tersebut

tanpa ada masalah.

Pada saat memulai, Anda harus menentukan lokasi instalasi apakah di local computer,

atau di komputer lain dalam jaringan.

Masukkan CD master SQL Server 2000, tunggu beberapa saat hingga muncul layar berikut

(jika layar tersebut tidak

muncul, buka folder Setup lalu dobel klik file setupsql.exe) Pada layar diatas pilih SQL

Server 2000 Components lalu pada layar dibawah pilih Install Database Server.

|

Page 20: Microsoft SQL Server Warna

Klik [Next] lalu pilih Local Computer dan klik [Next]

Selanjutnya pilih Create New Instance agar SQL Server membuat instalasi baru.

|

Page 21: Microsoft SQL Server Warna

Langkah berikutnya adalah menentukan komponen yang akan diinstal. Pilih server

and Client Tools yang meliputi database engine sebagagai inti SQL Server dan client tools

yang berfungsi sebagai interface untuk mengatur dan setup SQL Server.

|

Page 22: Microsoft SQL Server Warna

Apabila Anda belum memiliki instalasi SQL Server di komputer tersebut, pilih

“Default”. Jika sudah ada SQL Server di komputer, Anda dapat membuat instance baru

sehingga terdapat 2 SQL Server di komputer Anda.

Tipe instalasi Typical sudah cukup mewakili untuk berbagai feature yang dibutuhkan

dalam membuat aplikasi.

|

Page 23: Microsoft SQL Server Warna

Pada bagian service setting, pilih local system account. Artinya SQL Server

menggunakan account system di OS untuk menjalankan servicenya. Anda dapat juga

menggunakan account yang terdapat di domain/ Active Directory maupun account user

tertentu untuk menjalankan service tersebut. Penjelasan lebih detil mengenai \ hal ini akan

dibahas di tulisan selanjutnya tentang SQL Server Lanjutan.

Untuk

mode Autentikasi, sebaiknya dipilih Windows Authentication yang lebih menjamin

keamanan karena terintegrasi dengan Windows. Antara mode Windows dan Mixed masing-

masing memiliki kelebihan yang akan dijelaskan pada artikel selanjutnya. Biasanya SQL

Server di internet/Web Hosting menggunakan Mixed Mode, sehingga setiap user/pelanggan

dapat membuat login di SQL Server tanpa harus memiliki login di sistem Windows.

|

Page 24: Microsoft SQL Server Warna

Selanjutnya proses instalasi akan mengcopy file ke komputer. Setelah proses selesai

maka Anda sudah siap bekerja dengan SQL Server.

1.2.2. Cara Instalasi Microsoft SQL Server 2005

Installasi SQL Server 2005 pada Windows Server 2003 SP

II dengan Virtual PC 2007.

Installasi SQL Server 2005 Enterprise Edition

Aplikasi program database yang kami gunakan adalah SQL server 2005 Enterprise

Edition. Kami menjalankan Sql server 2005 pada platform windows server 2003 yang

berjalan di virtual PC 2007. Pada proses intallasi ini kami menggunakan perangkat Laptop/

Notebook Acer 4710 (core duo 2.0GHz, 4GB DDR2 RAM).

Perlu diketahui penulis menggunakan Windows yang berlicense, begitu pula SQL

server 2005 Enterprise Edition. Yang bertujuan untuk kegiatan belajar.

|

Page 25: Microsoft SQL Server Warna

Persyaratan minimum perangkat keras untuk menjalankan SQL Server 2005 :

|

Page 26: Microsoft SQL Server Warna

Persyaratan kecocokan sql server dengan sistem operasi yang digunakan :

|

Page 27: Microsoft SQL Server Warna

|

Page 28: Microsoft SQL Server Warna

Software/ Aplikasi yang berhubungan dengan internet/ web yang dibutuhkan :

Langsung saja kami berikan step by step bagaimana menginstall Virtual PC 2007, sebagai komputer virtual untuk menjalankan Windows Server

2003. Perlu diketahui, OS yang saat ini digunakan adalah Windows XPProfessional.

|

Page 29: Microsoft SQL Server Warna

MICROSOFT VIRTUAL PC 2007 :

Siapkan CD/ ISO Virtual PC 2007

Klik file VPC2007x86_EN. VPC2007X86 adalah singkatan dari Virtual PC 2007

untuk komputer bermesin 32bit atau x86. Sedang EN adalah Virtual PC English.

Akan tampil seperti gambar dibawah ini :

Setelah itu tekan tombol Next, kemudian set menjadi I Accept lalu klik Next.

Kemudian akan keluar form username dan organization, isi lah sesuai dengan apa

yang anda masukan. Kemudian Next, ketika memilih file directory lanjut dengan klik

Next. Lalu akan terjadi proses installasi, dan berakhir dengan Finish. Dan Virtual PC

2007 telah dapat digunakan.

|

Page 30: Microsoft SQL Server Warna

Jalankan Virtual PC 2007

Pilih New, dan Setelah muncul jendela baru klik next

Pilih Create Virtual Machine, dan setelah itu klik Next.

Lalu ketikan nama virtual, bebas terserah Anda “Server 2003” lalu klik next.default

nya : New Virtual Machine

Nah pada bagian ini pilih jenis Operasi sistem yang ingin Anda install, jikalau tidak

ada pilihlah Others (Linux / Windows Server 2008). Tapi saat ini pilih lah Windows

Server 2003, lalu klik Next.

Lalu kotak dialog memory akan segera tampil, secara default akan tersetting 256MB,

jikalau ingin mengatur memory, pilih Adjusting the RAM lalu setting lah sesuai

dengan semau anda (1024MB) lalu tekan next. Perlu di ingat dalam mensetting RAM

diharapkan, memperhatikan nilai RAM yang terdapat di komputer kita, contohnya

Laptop memiliki RAM 2GB, setting Virtual PC 1024MB. Artinya komputer

menjalankan Windows XP 1024MB, dan Windows Server 2003 1024MB. Proses ini

berlaku ketika menajalankan Win Server 2003, pada virtual pc saja.

|

Page 31: Microsoft SQL Server Warna

Ini baru sampai konfigurasi awal untuk virtual machine, selanjutnya adalah mengatur

penggunaan virtual hardisk pada virtual machine. Melanjutkan installasi yang telah di

next tadi, selanjutnya terdapat optional dan pilihlah a new virtual hardisk. Lalu pilih

next..

Apabila anda ingin mengikuti nilai default klik tombol next, atau anda ingin

mensetkan terlebih dahulu.

|

Page 32: Microsoft SQL Server Warna

Terakhir klik tombol Finish. Sampai disini anda sudah bisa membuat virtual machine

dan virtual disk. Untuk melihat komponen2 apa saja yang ada anda dapat melihat

“Setting” pada halaman awal.

Jalankan virtual PC 2007, pada tampilan awal seperti ini. Pilih windows yang mau di

install, dan klik “Start”.

Siapkan DVD/CD Windows Server 2003, dan masukan kedalam DVD/CD room

anda. Setelah itu akan muncul jendela baru, yang berisi seperti tampilan awal ketika

kita booting CPU.

|

Page 33: Microsoft SQL Server Warna

Lalu pilih CD, dan Use physical drive E ://

Jikalau tidak terdeteksi, restart Virtual Machine dengan memilih “Action” (pada

pojok kiri atas) klik saja “restart”.

Dari sini lakukanlah install windows seperti biasa nya, hingga usai dan Windows

digunakan pada virtual PC

|

Page 34: Microsoft SQL Server Warna

Installasi Sql Server 2005 Enterprise Edition 32-Bit pada

Windows Server 2003

Sebelum melakukan proses installasi ada baiknya, install terlebih dahulu komponen

sql server yang dibutuhkan. Apa itu? Itu adalah IIS server. Pergilah ke Control Panel,

lalu pilih add/remove programs.Klik bagian kiri yang bernama add/remove komponen

windows, beberapa saat keluar jendela baru beri tanda cek list pada “Application

Server” mohon sebelum proses instal, terlebih dahulu lihat detail. Cek kembali apakah

IIS sudah terceklis?, jika belum ceklist saja. Yang lain tidak perlu diceklist yang

mengandung kata .net/asp.net. Lalu oke, dan lanjutkan installasi server IIS.

Siapkan DVD/CD sql server 2005 yang anda miliki, dan masukan lah ke dalam

sebuah DVD/CD room. Diharapkan posisi ini sudah berada pada sebuah Windows

Server 2003 yang sedang dijalankan.

Install “Server components, tool, Book,...”, beberapa saat keluar jendela “License

Agreements” beri tanda ceklist dan

next. Lalu keluar windows baru

|

Page 35: Microsoft SQL Server Warna

yang menyatakan proses installasi dot Net Framwork 2.0 dan 2 lainnya. Setelah

selesai klik tombol Next.

Isikan nama Anda dan nama perusahaan Anda di halaman berikutnya, jika sudah tekan tombol next.

|

Page 36: Microsoft SQL Server Warna

Pilih komponen yang ingin Anda install di halaman ini. Integration Service

merupakan fitur baru di SQL Server 2005 yang menawarkan banyak keuntungan dan

kemudahan administrasi database. Jika Anda ingin bereksplorasi, aktifkan semua

komponen. Kemudian pilih menu Advanced untuk menginstall sample databases,

SQL Server Books Online, dan Sample Codes. Setelah konfigurasi selesai dilakukan,

tekan tombol next.

Di halaman berikutnya pilih default instances untuk Instances Name Anda. Untuk

catatan, Anda dapat menginstall lebih dari 1 instances, tapi untuk instalasi pertama

kali, Anda harus menginstall default instances ini. Instances dapat diumpamakan

sebagai server baru. Anda dapat mengaktifkan instances baru untuk masalah

kompatibilitas dengan SQL Server edisi sebelumnya, testing software, dll. Tekan

tombol next setelah selesai.

Pada halaman Service Accounts, pilih Local System, kemudian pilih tombol next.

Pada halaman ini, Anda harus memilih mode autentikasi yang ingin Anda gunakan.

Bagi Anda yang baru pertama kali mencoba aplikasi ini, sebaiknya Anda pilih

Windows Authentication Mode terlebih saja. setelah selesai, tekan tombol next.

Pada halaman Collation Settings, Anda dapat memilih mode collation yang ingin

Anda gunakan. Untuk default, SQL Server akan menggunakan incase-

sensitive,inaccent sensitive, dan sebagainya. Tekan tombol next jika sudah selesai.

|

Page 37: Microsoft SQL Server Warna

Pada bagian error report pilih bagaimana sikap Anda jika ada error pada SQL Server

2005, tekan tombol next jika sudah selesai.

Jika sudah mencapai tahap ini, berarti Anda sudah siap menginstall SQL Server 2005.

Anda akan diberikan review konfigurasi yang telah Anda pilih sebelumnya di

halaman ini. Tekan tombol install jika sudah selesai.

|

Page 38: Microsoft SQL Server Warna

Setelah selesai. Klik tombol finish. Anda dapat menggunakan SQL server 2005 pada

windows server 2003_^.

1.2.3. Instalasi SQL Server 7.0 pada komputer pribadi ( bukan server )

|

Page 39: Microsoft SQL Server Warna

|

Page 40: Microsoft SQL Server Warna

|

Page 41: Microsoft SQL Server Warna

|

Page 42: Microsoft SQL Server Warna

|

Page 43: Microsoft SQL Server Warna

|

Page 44: Microsoft SQL Server Warna

|

Page 45: Microsoft SQL Server Warna

|

Page 46: Microsoft SQL Server Warna

|

Page 47: Microsoft SQL Server Warna

1.3.TSQL

1.3.1. Pengertian TSQL

Apa itu T-SQL?

Setiap database server semuanya pasti mendukung SQL dan SQL Server

dalam hal ini mengembangkan ekstensinya sendiri yang diberi nama T-

SQL atau Transact-SQL. Ini bisa Anda analogikan seperti PL/SQL jika

pada Oracle Database. T-SQL merupakan superset dari SQL-92 (standar

ISO untuk SQL yang disertifikasi pada tahun 1992). T-SQL menambahkan beberapa sintaks

baru yang hanya dikenal di SQL Server. Seperti diketahui bahwa standar SQL mengharuskan

transaksi database dengan istilah ACID yaitu Atomic, Consistent, Isolated dan Durable.

Transact-SQL adalah pusat menggunakan SQL Server. Semua aplikasi yang

berkomunikasi dengan sebuah instance dari SQL Server melakukannya dengan mengirimkan

pernyataan Transact-SQL ke server, tanpa user interface aplikasi.

Berikut ini adalah daftar jenis-jenis aplikasi yang dapat menghasilkan Transact-SQL:

Kantor aplikasi produktivitas Umum.

Aplikasi yang menggunakan antarmuka pengguna grafis (GUI) agar pengguna

memilih tabel dan kolom dari yang mereka ingin melihat data.

Aplikasi yang menggunakan kalimat-kalimat bahasa umum untuk menentukan data

apa yang pengguna ingin melihat.

Bidang aplikasi bisnis yang menyimpan data mereka dalam database SQL Server.

Aplikasi tersebut dapat mencakup aplikasi yang ditulis oleh vendor dan aplikasi yang

ditulis dalam-rumah.

Transact-SQL script yang dijalankan dengan menggunakan utilitas seperti sqlcmd.

Aplikasi dibuat dengan menggunakan pengembangan sistem seperti Microsoft Visual

C + +, Microsoft Visual Basic, atau Visual Microsoft J + + yang menggunakan

database API seperti ADO, OLE DB, dan ODBC.

Web halaman yang mengekstrak data dari database SQL Server.

|

Page 48: Microsoft SQL Server Warna

sistem database yang terdistribusi dari data dari SQL Server direplikasi ke berbagai

database, atau didistribusikan query dijalankan.

Data gudang di mana data yang diekstrak dari proses transaksi online (OLTP) sistem

dan diringkas untuk analisis keputusan-dukungan.

Apa ada varian dari SQL Server?

Versi sederhana dari SQL Server dikenal dengan nama MSDE (Microsoft SQL Server

Desktop Engine) dan didistribusikan bersama dengan produk Microsoft yang lainnya seperti

Visual Studio, Visual FoxPro, Microsoft Access dan yang lainnya. Batasan dari MSDE ini

adalah maksimal database yang bisa dihasilkan adalah 2 GB dan tidak dilengkapi dengan tool

untuk mengadministrasi databasenya. Berita baiknya adalah Microsoft sedang menyiapkan

versi lanjutan dari MSDE yang akan diberi nama SQL Server Express. SQL Server Express

ini akan dilengkapi dengan SQL Server Express Manager untuk mengadministrasi database

dengan mudah.

SQL Server dilengkapi dengan fungsi-fungsi untuk keperluan Business Intelligence

melalui Analysis Services (sebelumnya bernama OLAP Services pada versi 7.0). Analysis

Services menawarkan OLAP (Online Analytical Processing) yang bisa diakses lewat web

sehingga bisa diakses juga dari internet. Sebagai tambahannya SQL Server 2000 juga

ditambahi dengan tools untuk keperluan data mining. Performance and Scalability

Improvements Dari sisi performa dan skalabilitas, SQL Server juga sudah

memperhitungkannya. Ini dicapai dengan menerapkan distributed partitioned views yang

mana memungkinkan untuk membagi workload ke beberapa server sekaligus. Peningkatan

lainnya dicapai di sisi DBCC, indexed view dan index reorganization.

Manajemen Transaksi Server:

1. Connect dan Disconnect

2. State Transaksi

3. Commit

4. Rollback

|

Page 49: Microsoft SQL Server Warna

Manajemen Database Server :

1. Backup dan Restore

2. Unload dan load / Reload

3. Kompresi dan Dekompresi

Database Security:

1. Encrypt

2. Otorisasi

SQL Server Online Manager

Membahas tentang SQL-DMO (SQL-Distributed Management Objects) dan beberapa

langkah untuk mengimplementasikannya.

SQL Server merupakan salah satu database engine yang patut untuk diperhitungkan

reliabilitasnya. Walaupun sebuah database engine merupakan servis yang boleh

dibilang tidak sederhana, tetapi Microsoft mampu merancang interface program-

program pendukungnya sedemikian rupa sehingga mudah untuk dipahami dan

digunakan.

Jika anda salah satu pengguna SQL Server, tentunya anda sudah sangat terbiasa

menggunakan tool-tool yang disediakan oleh database engine tersebut. salah satu tool yang

sangat banyak digunakan adalah Enterprise Manager. Dengan tool itu kita bisa membuat dan

memaintenance database dengan sangat mudah. Tetapi kemudahan-kemudahan yang

ditawarkan oleh microsoft kadang tidak sepenuhnya mampu mengatasi masalah yang kita

hadapi. Salah satu contoh jika kita dihadapkan pada sebuah pertanyaan, dengan tool yang ada

apakah bisa kita memaintenance database kita kapan saja dan dari mana saja, misalkan dari

warnet atau dari rumah kita? Saya pernah mencoba enterprise manager saya remote dari

rumah saya menggunakan Virtual Private Network (VPN) dan ternyata bisa tersambung, akan

tetapi hasilnya sangat mengecewakan karena selain koneksinya yang lambat kadang juga

sering putus. Dari kasus ini kemudian saya mencoba berpikir bagaimana caranya mencari

solusinya. Akhirnya setelah baca-baca dari beberapa tutorial akhirnya saya tertarik dengan

|

Page 50: Microsoft SQL Server Warna

SQL-DMO untuk memecahkan problem tersebut. Dikarenakan aplikasi tersebut harus bisa

online maka untuk prgrammingnya saya pilih ASP.

1.3.2. Syntak SQL dan Fungsinya

Beberapa Fungsi Penting di SQL Server

Function (fungsi) adalah suatu procedure yang menghasilkan suatu nilai tertentu.

Function di dalam SQL Server dibagi menjadi dua yaitu function yang sudah ada di SQL

Server (bawaan) dan function buatan user. Beberapa function bawaan Ms. SQL Server adalah

sbb :

Data Defenition Language ( DDL ) / Pembentukan

database

Membuat tabel (Creating tables)

Syntax

CREATE TABLE <nama_tabel> (

<nama_kolom> <tipe_data>(<panjang_data>)

[UNIQUE] [NOT NUL] [PRIMARY KEY] [DEFAULT<nilai_default>]

[referential_constraint_defenition>] [CHECK<constraint_defenotion>],

<nama_kolom> <tipe_data>(<panjang_data>)

[UNIQUE] [NOT NULL] [PRIMARY KEY] [DEFAULT<nilai>]

[referential_constraint_defenition>] [CHECK<constraint_defenition>],

. . .

|

Page 51: Microsoft SQL Server Warna

);

Keterangan Unique; Pada kolom tersebut tidak boleh ada data yang sama. Not Null;

tidak boleh data pada kolom tersebut bernilai null Unique dan Not Null; kolom tersebut dapat

dijadikan primary key. Default; nilai default yang secara otomatis akan mengisi kolom

dengan data default tersebut setiap operasi insert dilakukan.

Referential_Constraint_Definition; Bila kolom tersebut merupakan foreign key

terhadap tabel lain. Dengan syntax

FOREIGN KEY <nama_kolom> REFERENCES <nama_tabel>

Contoh :

CREATE TABLE Pelajar (

No_Induk CHAR(8),

Nama CHAR(20),

Tgl_Lahir DATE,

Kelas CHAR(2)

);

CREATE TABLE Mata_Pelajaran(

Kode CHAR(4),

Nama CHAR(20),

Kelas CHAR(2)

);

CREATE TABLE Nilai(

No_Induk CHAR(8),

|

Page 52: Microsoft SQL Server Warna

Kode CHAR(4),

Nl_Angka Number

);

Membuat index (Creating indices)

Syntax

. . .

[<nama_kolom><tipe_data>(<panjang_data>)REFERENCES<nama_tabel>(<nama_kolom>

), . . . ]

CREATE INDEX <nama_index> ON <namatabel>(<nama_kolom>);

Contoh :

DROP TABLE Pelajar;

CREATE TABLE Pelajar (

No_Induk CHAR(8) PRIMARY KEY,

Nama CHAR(20),

Tgl_Lahir DATE,

Kelas CHAR(2)

);

CREATE INDEX nm ON Pelajar(Nama);

DROP TABLE Mata_Pelajaran;

CREATE TABLE Mata_Pelajaran(

Kode CHAR(4) PRIMARY KEY,

|

Page 53: Microsoft SQL Server Warna

Nama CHAR(20),

Kelas CHAR(2)

);

CREATE TABLE Nilai(

No_Induk CHAR(8) REFERENCES Pelajar(No_Induk),

Kode CHAR(4) REFERENCES Mata_Pelajaran(Kode),

Nilai Number

);

Mengubah tabel (Altering tables)

Syntax

ALTER TABLE <nama_tabel>

[ ADD (<nama_kolom> <tipe_data>(<panjang_data>), . . . ); ]

[ MODIFY (<nama_kolom><tipe_data>(<panjang_data>), . . .); ]

Keterangan

Add; Penambahan kolom baru.

Modify; Mengubah kolom yang sudah ada sebelumnya.

Contoh :

ALTER TABLE Pelajar

ADD (Jenis_Kelamin CHAR(10));

|

Page 54: Microsoft SQL Server Warna

Menghapus tabel (Dropping tables)

Syntax

DROP TABLE <nama_tabel>

DROP INDEX <nama_index>

Contoh :

DROP TABLE Pelajar;

DROP INDEX nm;

Data Manipulation Language ( DML ) / Manipulasi Data

Penyisipan data (Inserting)

Syntax

INSERT INTO <nama_tabel> [(<nama_kolom1,nama_kolom2, . . . <nama_kolomN>)]

VALUES (<nilai_kolom1>,<nilai_kolom2>, . . . <nilai_kolomN>);

Contoh :

DROP TABLE Pelajar CASCADE CONSTRAINTS;

CREATE TABLE Pelajar (

No_Induk CHAR(8) PRIMARY KEY,

Nama CHAR(20),

Tgl_Lahir DATE,

|

Page 55: Microsoft SQL Server Warna

Kelas CHAR(2)

);

INSERT INTO Pelajar

VALUES (‘00311217’,’Wempi Satria’,’02-JAN-1982’,’1’,’Laki-laki’);

INSERT INTO Pelajar

VALUES (‘00311211’,’Wempi,’03-MAR -1982’,’1’,’Laki-laki’);

INSERT INTO Pelajar

VALUES (‘00311210’,’Satria’,’12-DEC -1982’,’1’,’Perempuan’);

Mengubah data (Updating)

Syntax

UPDATE <nama_tabel>

SET <nama_kolom1= ‘nilai_kolom1’>,

<nama_kolom2= ‘nilai_kolom2’>,

. . . ,

<nama_kolomN= ‘nilai_kolomN’>

[WHERE <kondisi>];

Contoh :

UPDATE Pelajar

SET No_Induk = ‘00311216’ ,Nama = ‘Wati’

|

Page 56: Microsoft SQL Server Warna

WHERE No_Induk =’00311210’ and Nama = ‘Satria’;

Menghapus data (Deletion)

Syntax

DELETE FROM <nama_tabel>

WHERE <kondisi>;

Contoh :

DELETE FROM Pelajar

WHERE No_Induk = ‘00311211’;

Seleksi data (Selection)

Syntax

SELECT [*] [<kolom1>, <kolom2>, . . ., <kolomN>]

[<alias.kolom1>, <alias.kolom2>, . . . , <alias.kolomN>]

FROM <nama_tabel>

WHERE <kondisi>

[AND <kondisi>]

[AND MONTH_BETWEEN (<kondisi>);

Contoh :

SELECT * FROM Pelajar;

SELECT a.No_Induk, a.Nama, b.Kode, b.Nama, c.Nl_Angka

|

Page 57: Microsoft SQL Server Warna

FROM Pelajar a, Mata_Pelajaran b, Nilai c;

WHERE a.No_Induk=c.No_Induk and b.Kode=c.kode;

Membuat tabel maya (Creating views)

Syntax

CREATE VIEW <nama_view>

AS SELECT <kolom1, kolom2, . . . , kolomN>

FROM <nama_tabel>

WHERE <kondisi>;

Data Control Language ( DCL ) / Kontrol Data

Konfirmasi menyimpan data di memory ke database (Commit)

Syntax

COMMIT [WORK];

Contoh :

INSERT INTO Pelajar

VALUES (‘00311210’,’Satria’,’15-DEC -1982’,’1’,’Perempuan’);

COMMIT;

|

Page 58: Microsoft SQL Server Warna

Mengembalikan status transaksi sebelum penyimpanan

(Rollback)

Syntax

ROLLBACK [WORK];

Pemberian hak dari satu user ke user lain (Grant)

Syntax

GRANT <spesifikasi_akses>

ON <nama_tabel/nama_view> TO <nama_user>

[WITH GRAN OPTION];

Penghapusan hak yang diberikan (Revoke)

Syntax

REVOKE <spesifikasi_akses>

FROM <nama_user>;

Spesifikasi akses

All Privileges; Semua hak diberikan.

|

Page 59: Microsoft SQL Server Warna

Select; Untuk seleksi

Update; Untuk mengubah data

Insert; Untuk menyisipkan data

Delete; Untuk menghapus data

EKSPRESI

FROM

Untuk mendefenisikan tabel yang menjadi sumber data

dari suatu perintah seleksi

Contoh : SELECT * FROM Pelajar

WHERE

Untuk mendefenisikan kondisi pengambilan data dari

suatu perintah seleksi

SELECT * FROM Pelajar

Contoh :

WHERE No_Induk = ‘00311217’;

GROUP BY

Untuk Mengelompokkan data berdasarkan ekspresi group

|

Page 60: Microsoft SQL Server Warna

Syntax :

SELECT <kolom1, kolom2, ... , kolomN>

FROM <nama_tabel>

WHERE <kondisi>

GROUP BY <group_kolom>;

Contoh : SELECT a.No_Induk, b.Nama, c.Nl_Angka

FROM Pelajar.a, Nilai b

WHERE a.No_Induk=c.No_Induk and b.kode=c.kode

GROUP BY a.No_Induk, b.Nama, c.Nl_Angka;

ORDER BY

Untuk mengurutkan data hasil seleksi

Syntax : SELECT <kolom1, kolom2, ... , kolomN>

FROM <nama_tabel>

WHERE <kondisi>

ORDER BY <nama_kolom> [DESC];

Contoh : SELECT * FROM Pelajar

ORDER BY No_Induk;

|

Page 61: Microsoft SQL Server Warna

HAVING

Untuk mendefenisikan batasan seleksi berdasarkan

GROUP BY

Syntax :

SELECT <kolom1, kolom2, ... , kolomN>

FROM <nama_tabel>

WHERE <kondisi>

GROUP BY <group_kolom>

HAVING <batasan_group>;

Contoh :

SELECT a.No_Induk, b.Nama, c.Nl_Angka

FROM Pelajar.a, Nilai b

WHERE a.No_Induk=c.No_Induk and b.kode=c.kode

GROUP BY a.No_Induk, b.Nama, c.Nl_Angka

HAVING Nilai>80;

|

Page 62: Microsoft SQL Server Warna

PREDIKAT

COMPARISON

Pembanding dua nilai dengan syarat type data yang dibandingkan harus sama

BETWEN

Pembanding untuk mengecek apakah suatu nilai berada

dalam range tertentu atau tidak

Syntax :

... BETWEEN ... AND ...

... NOT BETWEEN ... AND ...

Contoh : Menampilkan data nilai pada range 80 dan 100

SELECT * FROM Nilai

|

Page 63: Microsoft SQL Server Warna

WHERE Nl_Angka BETWEEN 80 AND 100;

IN

Untuk melakukan pengecekan apakah suatu nilai

terdapat dalam suatu himpunan

Syntax :

IN ( ... )

IN SELECT ...

Contoh : Select * FROM Pelajar a

WHERE a.No_Induk IN (SELECT b.No_Induk FROM Nilai b);

LIKE / NOT LIKE

Untuk membandingkan data dengan pola / struktur

tertentu, untuk satu karakter dipakai ( _ ) dan string ( %

)

Syntax : ... <kolom> LIKE <struktur>

... <kolom> NOT LIKE <struktur>

|

Page 64: Microsoft SQL Server Warna

Contoh : SELECT * FROM Pelajar

WHERE Nama LIKE ‘We%’;

IS NULL / IS NOT NULL

Untuk membandingkan suatu nilai dengan NULL

Syntax : ... <kolom> IS NULL ... <kolom> IS NOT NULL

Contoh :

SELECT * FROM Pelajar

WHERE Kelas IS NULL

EXIST

Untuk pengecekan apakah suatu query memiliki hasil atau

tidak

Syntax : ... WHERE EXIST (SELECT ... )

Contoh : SELECT * FROM Pelajar a

WHERE EXIST (

SELECT b.No_Induk FROM Nilai b

WHERE a.No_Induk=b.No_Induk);

|

Page 65: Microsoft SQL Server Warna

String Functions

1. ASCII

Kegunaan : Menghasilkan nilai ASCII dari suatu karakter.

Sintaks : ASCII(<expression>)

Contoh :

SELECT

ASCII(‘A’) uppercase_a,

ASCII(‘abc’) lowercase_a

uppercase_a lowercase_a

----------- -----------

65 97

2. CHAR

Kegunaan : Menghasilkan karakter dari suatu angka ASCII.

Sintaks : CHAR(<numeric_expression>)

Contoh :

SELECT

CHAR(65) uppercase_a,

CHAR(97) lowercase_a

uppercase_a lowercase_a

----------- -----------

A a

3. CHARINDEX

Kegunaan :Menghasilkan nilai posisi karakter dari suatukarakter/kata/kalimat

yang dicari.

Sintaks : CHARINDEX(<char_expression1>, <char_expression2>)

Contoh :

SELECT

CHARINDEX(‘E’, ‘ABCDEFG’) AS position

position

---------

|

Page 66: Microsoft SQL Server Warna

5

4. LEFT & RIGHT

Kegunaan : Menghasilkan beberapa karakter yang berawal dari sebelah kiri

(left) atau kanan (right) dari suatu karakter/kata/kalimat.

Sintaks :

LEFT(<char_expression>,<length_integer>)

RIGHT(<char_expression>,<length_integer>)

Contoh :

SELECT

RIGHT(‘ABCDEF’, 3) AS three_last,

LEFT(‘ABCDEF’, 3) AS three_first

three_last three_first

---------- ------------

DEF ABC

5. LEN

Kegunaan : Menghasilkan panjang dari suatu karakter/kata/kalimat.

Sintaks : LEN(<char_expression>)

Contoh :

SELECT LEN(‘ ABCD ‘) AS total_length

total_length

------------

5

6. LTRIM & RTRIM

Kegunaan : Menghilangkan spasi sebelah kiri atau kanan dari suatu

karakter/kata/kalimat.

Sintaks :

LTRIM(<char_expression>)

RTRIM(<char_expression>)

Contoh :

SELECT

|

Page 67: Microsoft SQL Server Warna

( ‘*’ + LTRIM (‘ ABC ‘) + ‘*’) AS left_trimmed,

( ‘*’ + RTRIM (‘ ABC ‘) + ‘*’) AS right_trimmed

left_trimmed right_trimmed

------------ ------------

*ABC * * ABC*

7. LOWER

Kegunaan : Menghasilkan tampilan huruf kecil dari suatu

karakter/kata/kalimat.

Sintaks : LOWER(<char_expression>)

Contoh :

SELECT

LOWER(‘STRING’) lowercase

LOWERCASE

------------

String

8. REPLACE

Kegunaan : Mengganti suatu karakter/ kata/ kalimat dengan suatu karakter/

kata/ kalimat lain berdasarkan posisi tertentu.

Sintaks :

REPLACE(<string_expression1>,<string_expression2>,<string_expression3>)

Contoh :

SELECT

REPLACE(‘ABCDEFG’,’CDE’,’*’) AS no_CDE

no_CDE

-------------

AB*FG

9. REPLICATE

Kegunaan : Menduplikasi suatu karakter/kata/kalimat dengan jumlah

tertentu.

Sintaks : REPLICATE(<expression>,<times_integer>)

|

Page 68: Microsoft SQL Server Warna

Contoh :

SELECT

REPLICATE(‘A’,5) AS five_a,

REPLICATE(‘’,5) AS five_blanks,

REPLICATE(5,2) AS two_times_five

five_a five_blanks two_times_five

------ ----------- --------------

AAAAA 55

10. REVERSE

Kegunaan : Membalik suatu karakter/kata/kalimat.

Sintaks : REVERSE(<expression>)

Contoh :

SELECT

REVERSE(‘ABCD’) AS backwards_char,

REVERSE(12345) AS backwards_numeric

backwards_char backwards_numeric

-------------- ----------------

DCBA 54321

11. STR

Kegunaan : Menampilkan numerik secara string dengan panjang dan tempat

pecahan yang bisa ditentukan.

Sintaks : STR(<number_float [,<length_integer> [,<decimal_integer]])

Contoh :

SELECT

STR(1234.5678, 4) AS four_chars

STR(1234.5678, 7,2) AS seven_chars

STR(1234.5678, 3,1) AS not_enough_space

four_chars seven_chars not_enough_space

---------- ----------- ----------------

1235 1234.57 ***

|

Page 69: Microsoft SQL Server Warna

12. STUFF

Kegunaan : Menghapus suatu kata/kalimat pada posisi dan panjang tertentu

kemudian diganti dengan karakter/kata/kalimat yang lain.

Sintaks : STUFF(<char_expression1> ,<start_integer> , <length_integer> ,

<char_expression2>)

Contoh 1 :

SELECT

STUFF(‘ABCDABCD’,5,4,’EFG’) as alphabet

alphabet

---------

ABCDEFG

Contoh 2 :

SELECT

STUFF(‘ABCDABCD’,5,3,NULL) AS remove3,

STUFF(‘ABCDABCD’,5,3,’ ‘) AS blank,

STUFF(‘ABCDABCD’,5,3,’’) AS empty_string

remove3 blank empty_string

------- ------ ------------

ABCDD ABCD D ABCDD

13. SUBSTRING

Kegunaan : Menghasilkan potongan kata/kalimat pada posisi dan panjang

tertentu dalam suatu karakter/kata/kalimat.

Sintaks : SUBSTRING(<expression>,<start_integer>,<length_integer>)

Contoh :

SELECT

SUBSTRING(‘ABCDEFG’,1,3) AS first_three,

SUBSTRING(0x001101,1,2) AS first_binary

first_three first_binary

----------- ------------

ABC 0x0011

|

Page 70: Microsoft SQL Server Warna

14. UPPER

Kegunaan : Menghasilkan tampilan huruf kapital dari suatu

karakter/kata/kalimat.

Sintaks : UPPER(<numeric expression>)

Contoh :

SELECT

UPPER(‘string’) as uppercase

UPPERCASE

-------------

STRING

Date and Time Functions (Fungsi Tanggal dan Waktu)

1. DATEADD

Kegunaan : Menghasilkan tanggal dan waktu baru berdasarkan tanggal dan

waktu asal/lama yang dijumlah dengan interval yang diinputkan.

Sintaks : DATEADD(<datepart>,<how_many_integer>,<add_to_date>)

Contoh :

SELECT

DATEADD(month,4, GETDATE()) as four_months_ahead

four_months_ahead

------------------------------------------------------

2006-11-11 09:39:19.747

2. DATEDIFF

Kegunaan : Menghasilkan selisih hari/bulan/tahun antara dua tanggal dan

waktu.

Sintaks : DATEDIFF(<datepart>,<date_expression1>,<date_expression2>)

Contoh :

SELECT

DATEDIFF (day, ‘1900-01-01’, GETDATE()) AS days

days

|

Page 71: Microsoft SQL Server Warna

-----------

38907

3. DATENAME

Kegunaan : Menghasilkan nama hari/bulan atau tahun dari tanggal tertentu.

Sintaks : DATENAME(<date_expression>)

Contoh :

SELECT

GETDATE() AS full_date,

DATENAME( month, GETDATE()) AS month_name

full_date month_name

----------------------- -------------------

2006-07-11 10:18:04.827 July

4. DATEPART

Kegunaan : Menghasilkan nama hari/bulan atau tahun dari bagian tanggal

tertentu.

Sintaks : DATEPART(<date_part>,<date_expression>)

Contoh :

SELECT

DATEPART(year, GETDATE()) as current_year

current_year

------------

2006

5. DAY

Kegunaan : Menghasilkan nilai hari dari tanggal tertentu.

Sintaks : DAY(<date_expression>)

Contoh :

SELECT

DAY(GETDATE()) AS current_day,

GETDATE() AS ‘current_date’

current_day current_date

|

Page 72: Microsoft SQL Server Warna

----------- ------------------------

11 2006-07-11 10:22:14.233

6. GETDATE

Kegunaan : Mengambil tanggal dan waktu dari sistem komputer.

Sintaks : GETDATE()

Contoh :

SELECT

GETDATE() AS local_time

local_time

------------------------

2004-03-07 16:33:23.940

7. MONTH Kegunaan : Menghasilkan nilai bulan dari tanggal tertentu.

Sintaks : MONTH(<date_expression>)

Contoh :

SELECT

MONTH(GETDATE()) AS current_month,

GETDATE() AS ‘current_date’

current_month current_date

------------- ------------------------

7 2006-07-11 10:32:09.810

8. YEAR

Kegunaan : Menghasilkan nilai tahun dari tanggal tertentu.

Sintaks : YEAR(<date_expression>)

Contoh :

SELECT

YEAR(GETDATE()) AS current_year,

GETDATE() AS ‘current_date’

current_year current_date

------------ ------------------------

2006 2006-07-11 10:34:30.043

|

Page 73: Microsoft SQL Server Warna

System Functions (Fungsi Sistem)

1. CAST & CONVERT

Kegunaan : Mengubah tipe suatu data ke tipe data yang lain.

Sintaks : CAST(<expression> AS <data_type>) CONVERT(data_type

[ ( length ) ] , expression [ , style ] )

Contoh 1 :

SELECT

‘$ ‘ + CAST (100 AS VARCHAR(10)) AS one_hundred_dollars

one_hundred_dollars

-------------------

$100

Contoh 2 :

SELECT

CONVERT(VARCHAR(25),GETDATE(),111) AS japanese_style,

CONVERT(VARCHAR(25),GETDATE(),104) AS german_style,

CONVERT(VARCHAR(25),GETDATE(),126) AS ISO8601_style

japanese_style german_style ISO8601_style

-------------------- ------------------ -------------------------

2006/07/11 11.07.2006 2006-07-11T11:03:38.093

2. ISDATE

Kegunaan : Memeriksa apakah suatu data merupakan tipe tanggal. Jika benar

menghasilkan angka 1 dan jika salah 0.

Sintaks : ISDATE( )

Contoh :

SELECT

ISDATE(GETDATE()) AS getdate_value,

ISDATE (‘07/18/2004’) AS date_value,

ISDATE(‘67/56/07’) AS not_a_date

|

Page 74: Microsoft SQL Server Warna

getdate_value date_value not_a_date

------------- ----------- -----------

1 1 0

3. ISNULL

Kegunaan : Memeriksa apakah suatu data bertipe null. Jika benar maka data

tersebut akan diganti dengan data lainnya.

Sintaks : ISNULL(<check_expression>,<replacement_value>)

Contoh :

SELECT

ISNULL(NULL, ‘it is NULL’) AS null_value,

ISNULL(‘not NULL’, ‘it is NULL’) AS not_null

null_value not_null

---------- --------

it is NULL not NULL

4. ISNUMERIC

Kegunaan : Memeriksa apakah suatu data merupakan tipe numerik. Jika

benar menghasilkan angka 1 dan jika salah 0.

Sintaks : ISNUMERIC( )

Contoh :

SELECT

ISNUMERIC(‘12345’) AS num_value,

ISNUMERIC(‘12@345’) AS not_num_value

num_value not_num_value

----------- -------------

1 0

1.3.3. Perintah – perintah SQL

Membuat Database

|

Page 75: Microsoft SQL Server Warna

Kita akan belajar membuat database, tabel, dan mengimport data dari database lain untuk digunakan sebagai sarana latihan perintah-perintah SQL.

Cara membuat sebuah database:

1. Buka Enterprise Manager lalu expand Microsoft SQL Server > SQL Server Groups

2. Lanjutkan dengan membuka server LOCAL, atau sesuai nama komputer Anda, lalu buka folder Database. Klik kanan folder tersebut dan pilih New Database.

3. Isikan nama database yang akan dibuat, misalnya: ASPNET.

|

Page 76: Microsoft SQL Server Warna

4. Lanjutkan dengan membuka tab Data Files, di bagian ini terdapat beberapa option

yang dapat dijelaskan sebagai berikut:

File Name dan Location, untuk memberi nama file dan meletakkan file

database tersebut di suatu lokasi folder yang diinginkan.

File growth, mengatur penambahan ukuran file database. Dapat ditetapkan

dengan persentase tertentu atau berdasarkan jumlah megabytes tertentu.

Maximum file size, ukuran file dapat dibatasi pada tingkat tertentu atau

unlimited.

5. Pada tab Transaction Log terdapat option yang sama dengan tab Data Files.

Apabila membuat database di SQL Server maka akan terdiri minimum 2 file yaitu:

Data File, adalah file untuk menyimpan data.

Transaction Log, adalah file ynag menyimpan histori transaksi dan semua

kejadian di database tersebut.

Pada tutorial ini semua option untuk 2 file tersebut dibiarkan dalam kondisi

default.

|

Page 77: Microsoft SQL Server Warna

6. Setelah proses pengisian option selesai, klik OK dan database baru akan terlihat di

Enterprise Manager.

Membuat Tabel

Sebuah database terdiri dari satu atau banyak tabel untuk menyimpan data. Untuk

membuat tabel, klik kanan nama database tersebut lalu pilih New > Table.

Kemudian diisi

nama- nama kolom/field

untuk tabel tersebut.

Berikut contoh pengisian

untuk tabel dengan nama

Pelanggan yang

berisi 6 field, lengkap

dengan tipe datanya

masing- masing.

|

Page 78: Microsoft SQL Server Warna

Dapat dilihat bahwa setiap field memiliki tipe data dan ukurannya masing-masing.

Penting untuk diperhatikan bahwa sebuah field harus menggunakan tipe data dan ukuran

secara tepat, sesuai dengan kebutuhannya. Apalagi tipe data dan ukurannya terlalu besar,

maka database akan cepat membengkak dan memakan memori lebih banyak dari yang

dibutuhkan. Selain itu juga perlu ditetapkan field mana yang harus diisi dan mana yang tidak.

Pada contoh tersebut field IDPelanggan, Nama, dan Email harus diisi dengan mengisi setup

Allow Null = False. Artinya field tersebut tidak diperbolehkan kosong.

Primary Key dan Foreign Key

Setiap tabel sebaiknya dilengkapi dengan primary key yang merupakan identitas

unik dari setiap baris data. Dengan demikian apabila dalam suatu tabel terdapat sekian ribu

baris data misalnya, maka setiap barisnya memiliki identitas sendiri berdasarkan primary key

|

Page 79: Microsoft SQL Server Warna

nya. Pada contoh diatas yang bertindak sebagai primary key adalah IDPelanggan, yang

berbeda untuk setiap barisnya.

Salah satu teknik sederhana dan efektif adalah menetapkan field autonumber

sebagai primary key. Jadi secara otomatis akan ditetapkan angka berurutan dalam setiap

barisnya. Pada tabel tersebut terlihat tipe datanya adalah smallint dan dibuat autonumber

dengan mengisi Identity Seed dan Identity Increment = 1. Identity diisi Yes, artinya field

tersebut akan bernilai berbeda setiap barisnya sehingga dapat berfungsi sebagai primary key.

Anda juga dapat membuat primary key dengan tipe data lain (bukan autonumber) sesuai

dengan kebutuhannya.

Cara membuat kunci utama tabel adalah sbb :

1. Letakkan kursor di field yang akan dijadikan kunci utamanya. Jika ada dua

field atau lebih yang letaknya berurutan dan akan dijadikan kunci utama maka

tekan shift dan klik kedua field tersebut. Jika letaknya tidak berurutan maka

tekan tombol ctrl dan klik field-fileld yang akan dijadikan kunci.

2.Kl

ik icon Set Primary Key

|

Page 80: Microsoft SQL Server Warna

3. Tampilan tabel yang mempunyai kunci utama atau primary key.

|

Page 81: Microsoft SQL Server Warna

Menghapus Database dan Tabel

Cara menghapus database adalah sbb :

1. Klik di folder database yang akan dihapus.

2. Klik kanan pada database tsb.

3. Pilih Delete maka akan muncul jendela seperti ini.

|

Page 82: Microsoft SQL Server Warna

4. Klik tombol OK untuk mengeksekusi dan tombol Cancel untuk membatalkan.

Cara menghapus tabel adalah sbb :

1. Klik di tabel yang akan dihapus.

2. Klik kanan pada tabel tsb.

3. Pilih menu Delete maka akan muncul jendela seperti ini.

|

Page 83: Microsoft SQL Server Warna

4. Jika yakin ingin menghapus klik tombol OK.

Relationship Antar Tabel

Dalam sebuah database terdapat hubungan antar tabel yang menjelaskan

keterkaitan satu tabel dengan tabel lainnya. Relationship ini sangat penting untuk menjaga

integritas dan konsistensi data antar tabel. Misalnya jangan sampai terjadi muncul data

tentang pembelian barang di tabel Order, padahal nama pelanggannya belum dientri di tabel

Pelanggan. Selain itu relationship juga mempermudah membaca desain sebuah database

karena terlihat dengan jelas hubungan antar tabelnya. Misalnya dibuat satu tabel lagi dengan

nama Order, yang berisi data-data pesanan barang yang dibeli oleh setiap pelanggan sebaga

berikut:

Kedua tabel tersebut (Pelanggan dan

Order) dihubungkan oleh field IDPelanggan, sehingga konsistensi dan hubungan data kedua

tabel dapat dijamin. Perlu diperhatikan bahwa field PelangganID yang terdapat di kedua tabel

tersebut harus memiliki tipe data yang sama.

|

Page 84: Microsoft SQL Server Warna

Untuk membuat relationship antara kedua tabel tersebut, klik kanan ikon Diagrams

dan pilih new Diagram sehingga akan tampil wizard untuk membuat diagram dan

relationship.

Pilih 2 tabel Pelanggan dan Order dan klik Add sehingga keduanya menjadi anggota diagram.

|

Page 85: Microsoft SQL Server Warna

Setelah selesai maka terihat kedua tabel tesebut sudah terdapat dalam diagram. Untuk

menetapkan relationship, tinggal mengklik field IDPelanggan di tabel Pelanggan, dan

mendragnya ke field IDPelanggan di tabel Order. Maka muncul dialog properti relationship

sebagai berikut:

Pada dialog tersebut terdapat beberapa option sebagai berikut:

Check existing data on creation, konsistensi data akan langsung dicek pada saat

pembuatan relationship.

Enforce relationship on replication, pada saat replikasi antar database maka

pengcopyan data dilakukan dengan mempertimbangkan hubungan antra tabel (tidak

dibahas dalam tulisan ini)

Enforces relationship for INSERTs and UPDATEs, merupakan bagian yang sangat

penting dalam relationship antar tabel. Bagian inimnegecek hubungan tabel setiap

terjadi perubahan dan penambahan data di tabel master.

o Cascade Update Related Fields, setiap ada perubahan di tabel master

(Pelanggan) makafield PelangganID di tabel Order juga ikut berubah.

o Cascade Delete Related Records, apabila data pelanggan di tabel master

(Pelanggan) dihapus, maka semua data yang terkait dengan PelangganID

terkait di tabel Order jugadihapus.

Setelah semua setup selesai, klik OK maka diagram tersebut selesai dibuat. Anda

dapat menambah tabel terkait ke dalam diagram tersebut sesuai dengan kebutuhan. Selain itu

juga dapat dibuat beberapa

diagram dalam satu databse

untuk mempermudah

menganalisis desain

database. Hal ini biasanya

dilakukan apabila jumlah

tabelnya sudah sangat

banyak.

|

Page 86: Microsoft SQL Server Warna

|

Page 87: Microsoft SQL Server Warna

Anda perlu memberikan nama kepada diagram tersebut dan menyimpannya. Klik toolbar Save untuk menyimpan diagram.

Konfigurasi Login dan Security

Security pada SQL Server merupakan sesuatu yang kompleks dan tidak cukup

dibahas tuntas dalam waktu singkat. Pada tulisan ini hanya dijelaskan dasar-dasar security

pada SQL Server. Terdapat 2 mode security dalam SQL Server, yaitu Windows Mode

(Integrated) dan SQL Mode (Standard). Buka property server Enterprise Manager dan

masuk ke tab Security.

|

Page 88: Microsoft SQL Server Warna

Maka terlihat ada 2 mode security sebagai berikut:

SQL Server and Windows, merupakan seting default saat instalasi. Dengan konfigurasi

ini maka akses koneksi ke SQL server dapat dilakukan menggunakan account Windows

atau dengan account login SQL Server (tidak berhubungan dengan account Windows).

Konfigurasi jenis ini sangat umum digunakan pada database yang diakses secara terbuka

oleh umum, misalnya pada berbagai jasa web hosting di internet. Policy web hosting

biasanya tidak mengijinkan pelanggannya untuk memiliki account Windows sehingga

|

Page 89: Microsoft SQL Server Warna

untuk akses ke SQL Server disediakan SQL Server login yang dibuat di dalam database

dan tidak berhubungan dengan account Windows.

Windows Only, sistem ini lebih aman dibandingkan dengan option pertama. Login untuk

akses ke SQL Server menggunakan account user di Windows. Dengan demikian policy

account dapat diatur sepenuhnya di Windows antara lain menyangkut perubahan

password, lockout, dan pembatasan waktu akses. Apabila databse digunakan di

lingkungan intranet atau internal, maka konfigurasi jenis ini lebih baik digunakan.

Membuat User SQL Server

Untuk membuat account user di SQL Server, buka folder Security dan klik kanan

Login lalu pilih New Login.

Pada dialog property pilih SQL Server user, artinya Anda membuat user di SQL

Server yang terpisah dari account Windows. Masukkan nama user misalnya aspnetuser, lalu

pilih default database yaitu ASPNET. Artinya user tersebut diberikan hak akses ke database

ASPNET. Selain itu juga dimasukkan password untuk user tersebut.

|

Page 90: Microsoft SQL Server Warna

Kemudian buka tab Database Access, dan tetapkan aspnetuser sebagai database owner

untuk ASPNET. Karena user ini ditetapkan sebagai owner maka memilki hak penuh untuk

merubah, membuat, dan menghapus obyek di dalam database ASPNET.

|

Page 91: Microsoft SQL Server Warna

Konfigurasi lebih detil tentang security ini akan dibahas pada tulisan selanjutnya.

Setelah pembuatan user selesai maka jika Anda membuka database ASPNET dan masuk ke

ikon user akan terlihat bahwa user aspnetuser tersebut telah menjadi anggota di dalam

database ASPNET.

|

Page 92: Microsoft SQL Server Warna

Memasukkan user Windows

Selain membuat user di SQL Server, Anda juga dapat memasukkan user Windows

sebagai user di SQL Server. Dengan demikian password user tersebut juga sama dengan di

Windows. Pada property New Login, pilih Windows Authentication lalu klik tombol yang

ada di sebelah kolom Name.

Kemudian pilih nama

komputer atau nama domain dimana user yang diinginkan berada. Artinya user tersebut tidak

harus berada dalam 1 server dengan SQL Server. User dapat berasal dari komputer lain, atau

dari Domain Controller dalam

jaringan.

|

Page 93: Microsoft SQL Server Warna

Setelah user tersebut di-Add, maka ditetapkan hak aksesnya terhadap database tertentu sebagaimana telah dilakukan untuk aspnetuser seperti contoh sebelumnya.

Backup dan Restore

Database yang telah dibuat harus dibackup secara teratur dan disimpan di lokasi yang

aman. File hasil backup dapat direstore ke server asal atau ke server lain. Untuk melakukan

backup database, ikuti langkah-langkah berikut:

2. Terdapat 4 jenis tipe backup, pilih Database-Complete yang artinya seluruh isi database

akan dibackup. Kemudian klik Add untuk menentukan lokasi backup. Klik tombol di

sebelah kolom File

name.

|

Page 94: Microsoft SQL Server Warna

3. Pilih lokasi backup sesuai yang diinginkan dan berikan nama file hasil backup di kotak File name

4. Klik OK setelah selesai, maka hasil pemilihan lokasi ditampilkan di property backup.

|

Page 95: Microsoft SQL Server Warna

5. Klik OK, dan backup akan dilakukan di lokasi yang telah ditentukan.

Proses restore adalah

kebalikan dari backup. Dengan restore maka file hasil backup disimpan kembali ke SQL

Server. Anda harus berhati-hati saat melakukan restore, agar tidak keliru dan menimpa

database yang versi datanya lebih baru. Anda dapat menetapkan apakah suatu restore akan

menimpa database lama, atau direstore sebagai database baru dengan nama berbeda.

Berikut langkah-langkah restore database:

1. Klik kanan folder database lalu pilih Restore. Setelah dialog restore ditampilkan, pada

kotak Restore as database Anda dapat memilih apakah database lama akan ditimpa

atau direstore sebagai database baru. Apabila ingin menimpa database lama pilih

nama database dari dropdown yang tersedia. Apabila ingin merestore sebagai database

baru maka isikan nama database pada kolom tersebut. Pada contoh ini dibuat database

baru dengan naama ASPNETBARU.

|

Page 96: Microsoft SQL Server Warna

2. Klik from device untuk menentukan lokasi file backup. Kemudian klik Select

Devices, plih Disk dan klik Add untuk mencari lokasi file.

3. Pilih file hasil backup lalu klik OK sampai kembali ke menu konfigurasi restore.

4. Setelah kembali ke menu restore database, klik option untuk menentukan nama dan

lokasi file database yang akan dibuat dari hasil restore. Secara default nama dan

lokasi filenya sama dengan database ASPNET karena backupnya dibuat dari

|

Page 97: Microsoft SQL Server Warna

database ini. Karena akan dibuat restore ke database baru maka harus ditetapkan

nama file database yang berbeda. Lokasi file boleh saja tetap sama dengan database

ASPNET.

5. Ganti nama file database dan log menjadi ASPNETBARU seperti berikut

Klik OK, maka restore dilakukan dan terbuat database baru bernama

ASPNETBARU.

Note: Apabila Anda ingin menimpa database lama dengan file backup maka pada

dialog Options harus dilipih: Force restore over existing database.

Perintah Transact SQL

|

Page 98: Microsoft SQL Server Warna

Anda telah mempelajari dasar-dasar administrasi database SQL Server pada tutorial

ini. Untuk mengakses data dari database digunakan perintah-perintah Transact SQL. Dengan

bahasa ini data di dapat ditambah, dihapus, update, sortir, filter serta melakukan berbagai

perhitungan manipulasi data.

Menghitung Umur di T-SQL

create function dbo.fAgeCalc(@DOB datetime,@Date datetime)

returns smallint as

----------------------------------------------------

-- * Created By David Wiseman, Updated 03/11/2006

-- * http://www.wisesoft.co.uk

-- * This function calculates a persons age at a

-- * specified date from their date of birth.

-- * Usage:

-- * select dbo.fAgeCalc('1982-04-18',GetDate())

-- * select dbo.fAgeCalc('1982-04-18','2006-11-03')

----------------------------------------------------

begin

return (

      select case when month(@DOB)>month(@Date) then datediff(yyyy,@DOB,@Date)-1

                  when month(@DOB)<month(@Date) then datediff(yyyy,@DOB,@Date)

                  when month(@DOB)=month(@Date) then

                        case when day(@DOB)>day(@Date)

                              then datediff(yyyy,@DOB,@Date)-1

                        else datediff(yyyy,@DOB,@Date) end

                  end)

|

Page 99: Microsoft SQL Server Warna

end

Merubah Database Name Pada SQL Server

Menggunakan Stored Procedure sp_renamedb,

SQL Server telah menyediakan suatu stored procedure untuk mengganti nama database yaitu

sp_renamedb yang terletak pada database master. Stored procedure ini mempunyai dua buah

parameter yaitu @dbname dan @newname. Parameter @dbname digunakan untuk

menandakan database name yang ingin Anda rubah namanya, sedangkan parameter

@newname digunakan untuk menunjukkan database name baru.

Contoh penggunaannya adalah sebagai berikut, misalkan ada database dengan nama

'golf_db' dan ingin Anda rubah menjadi 'golf_database' maka Anda bisa mengetikkan

perintah sebagai berikut pada Query Analyzer. Pastikan Anda berada pada database master

sebagai database yang aktif saat ini.

exec sp_renamedb @dbname = 'golf_db', @newname = 'golf_database'

Jika sukses maka akan muncul kalimat sebagai berikut:

The database name 'golf_database' has been set.

Menggunakan Statement ALTER DATABASE,

Selain menggunakan stored procedure sp_renamedb Anda juga bisa menggunakan

statement DDL ALTER DATABASE. Mari kita ulangi lagi contoh diatas, misalkan ada

database dengan nama 'golf_db' dan ingin Anda rubah menjadi 'golf_database' maka Anda

bisa mengetikkan perintah sebagai berikut pada Query Analyzer.

Contoh : ALTER DATABASE golf_db MODIFY NAME = golf_database

View Sederhana

Membuat View Satu Tabel

|

Page 100: Microsoft SQL Server Warna

Cara membuat tabel di SQL Server Management Studio Express adalah sbb :

1. Letakkan kursor di folder view yang akan dibuat viewnya.

2. Klik kanan maka akan muncul tampilan sbb.

3. Pilih New maka akan muncul sub menu seperti di bawah ini.

4. Pilih tombol Add maka akan muncul jendela pembuatan view.

|

Page 101: Microsoft SQL Server Warna

|

Page 102: Microsoft SQL Server Warna

5. Untuk menambahkan tabel kedalam view caranya klik icon Add Tabel.

6. Tampilan jendela Add Tabel.

7. Jika ingin membuat view dari tabel maka klik tab tables kemudian pilih tabel

yang akan ditambahkan kemudian klik tombol Add.

8. Setelah tabel ditambahkan maka pada area untuk memilih field pilih field-field

yang akan ditampilkan.

|

Page 103: Microsoft SQL Server Warna

9. Pada contoh di atas yang akan ditampilkan di view dengan tabel M_Mahasiswa

adalah field NIM, Nama dan Alamat. Selain itu hasil view akan disort berdasarkan

NIM secara ascending.

10. Hasil Script SQL-nya di area Script SQL adalah sbb.

|

Page 104: Microsoft SQL Server Warna

11. Untuk menjalankan query dari view tsb klik icon Run.

12. Hasil query dari view tersebut adalah sbb.

13. Untuk menyimpan view

yang telah kita buat maka klik icon Save seperti gambar di bawah ini.

14. Jendela untuk menyimpan nama view akan muncul berbentuk sbb.

15. Isikan nama viewnya contoh ini mahasiswa kemudian klik tombol OK untuk

mengeksekusi dan tombol Cancel untuk membatalkan.

Memformat nilai Integer menjadi 2 digit String di T-SQL

studi kasus yang saya punya adalah saya ingin memformat tanggal ‘2010-01-08’ menjadi

‘01/08’.

Saya bisa mendapatkan nilai Day dan Month dari tanggal tersebut dengan fungsi

DATEPART. Yang saya butuhkan adalah memformat nilai Integer yang saya dapat dari

fungsi DATEPART tersebut menjadi 2 digit String.

|

Page 105: Microsoft SQL Server Warna

Berikut adalah kode yang bisa saya pakai:

SELECT RIGHT('00' + LTRIM(STR(<angka>)), 2)

Kalau saya ganti <angka>  dengan 3, seperti ini:

SELECT RIGHT('00' + LTRIM(STR(3)), 2)

maka hasilnya adalah: 03

Berikut adalah solusi kasus saya:

DECLARE @dToFormat datetime

SET @dToFormat = '2010-01-08'

SELECT RIGHT('00' + LTRIM(STR(DATEPART(M, @dToFormat))), 2) + '/' + RIGHT('00' +

LTRIM(STR(DATEPART(D, @dToFormat))), 2)

dimana hasil eksekusinya adalah: 01/08

Snippet: T-SQL OPENQUERY SYNTAX (SQL)

SELECT [username], [password] FROM OPENQUERY(DBServer,'SELECT [username], [password] FROM agents')

DELETE FROM OPENQUERY (DBServer, 'SELECT username, domain FROM agents')

WHERE username NOT IN (SELECT [name] FROM @agentTmp)

UPDATE OPENQUERY (DBServer, 'SELECT username as n, password as p FROM agents')

SET p = AG.psw

FROM [name] , psw FROM @agentTmp) as AG

WHERE n = AG.name

INSERT INTO OPENQUERY (DBServer, 'SELECT username as n, password as p FROM agents')

SELECT [name] ,[psw]

FROM @agentTmp

Snippet: T-SQL cursor (SQL)

|

Page 106: Microsoft SQL Server Warna

DECLARE UniqueNameCursor Cursor

FOR

Select id

From @tbl -- any table here

Open UniqueNameCursor

DECLARE @id bigint -- id

FETCH NEXT FROM UniqueNameCursor INTO @id

While (@@FETCH_STATUS <> -1)

BEGIN

IF (@@FETCH_STATUS <> -2)

-- use @id for your pourposes

FETCH NEXT FROM UniqueNameCursor INTO @id

END

CLOSE UniqueNameCursor

DEALLOCATE UniqueNameCursor

Snippet: T-SQL transaction (SQL)

Title: T-SQL transaction Language: SQL Description: Template for try-catch with transaction

BEGIN TRYBEGIN TRAN

-- insert and updates here

COMMIT TRANEND TRYBEGIN CATCH

DECLARE @r nvarchar(max)SELECT @r = ERROR_MESSAGE()

|

Page 107: Microsoft SQL Server Warna

IF (@@TRANCOUNT > 0)BEGIN

PRINTN'The transaction is in an uncommittable state. ' +'Rolling back transaction.'

ROLLBACK TRANSACTION;END;RAISERROR(@r,16,1)

END CATCH

TSQL Enhancement in SQL Server 2008

Meski sepertinya sudah banyak yang tahu bahwa produk terbaru dari microsoft yaitu

SQL Server 2008 memiliki kehandalan dalam menangani data dalam skala enterprise, namun

tidak ada salahnya kita sedikit perhatikan perubahan mendasar dalam hal Syntax TSQL yang

terbaru di SQL Server 2008 ini.

Beberapa fitur yang sangat membantu developer dalam hal kemudahan melakukan

scripting di database diantaranya adalah adanya type data baru dan perintah SQL baru yang

banyak membantu database developer khususnya bagi mereka yang memiliki latar belakang

dari programming.

Berikut beberapa Enhancement dari TSQL di SQL Server

2008

A. TSQL "Delighters"

|

Page 108: Microsoft SQL Server Warna

terdapat kemampuan untuk melakukan perintah berikut dalam script TSQL di SQL 2008

DECLARE @t int = 5; -- ini tidak bisa dilakukan di versi sebelumnya INSERT dbo.myT

VALUES (‘WA’, @t), (‘FL’, @t+1); --ini tidak bisa dilakukan di versi sebelumnya

UPDATE dbo.myT

SET instances+=1; --ini tidak bisa dilakukan di versi sebelumnya

B. Table Value Parameter

Memungkinkan kita untuk mengirimkan para meter data berupa table, yang bisa

mengurangi rountrip dalam proses pengiriman data dari aplikasi ke server, karena bisa

dilakukan dalam 1 kali pemanggilan SP

create proc ins_data (@t table (a int)) as … -- Declarasi SP seperti ini tidak bisa dilakukan

pada versi sebelumnya

Berikut contoh implementasi Table value paramenter

USE AdventureWorks

GO

-- Declarasikan Table Value type EmployeeTable

CREATE TYPE EmployeeTableType AS TABLE

(EmpID INT, EmpName nvarchar(100), EmpEmail nvarchar(100))

USE AdventureWorks

GO

-- Buat Procedure yang menggunakan Parameter dengan type EmployeeTableType

|

Page 109: Microsoft SQL Server Warna

CREATE PROCEDURE NewEmployee(@EmployeeDetails EmployeeTableType READONLY)

As

BEGIN

INSERT INTO dbo.Employee

SELECT * FROM @EmployeeDetails

END

-- Simpan data di table value type

use AdventureWorks

Go

DECLARE @NewEmployees EmployeeTableType

INSERT INTO @NewEmployees

VALUES(1,'John McLean','[email protected]')

INSERT INTO @NewEmployees

VALUES(2,'Bob Smith','[email protected]')

INSERT INTO @NewEmployees

VALUES(3,'Ted Connery','[email protected]')

--- Panggil SP

EXECUTE NewEmployee @NewEmployees

|

Page 110: Microsoft SQL Server Warna

C. MERGE Statement

Merge di gunakan untuk menangani proses UPSERT (UPDATE or INSERT) terhadap

suatu table, perintah ini menyederhanakan perintah IF Exist yang selama ini di gunakan untuk

melakukan syncronisasi data. skenario umumnya jika data sudah ada maka akan di update

diantaranya

*

OLTP insert-or-update (UPSERT)

o

-> UPDATE if row exists, INSERT otherwise

*

Synchronize two tables

o

-> INSERT/UPDATE/DELETE rows in the target table based on differences with source

*

Tracking history of slowly changing dimensions

o

-> UPDATE existing rows as not current, INSERT new data

*

Tracking inventory

o

-> INSERT new stock, UPDATE existing stock, DELETE when amount is zero

berikut Syntax MERGE Statement

[ WITH <common_table_expression> [ ,…n ] ]

MERGE

|

Page 111: Microsoft SQL Server Warna

[ TOP (expression) [ PERCENT ] ]

[ INTO ] <target_table> [ [ AS ] table_alias ] [ WITH( <merge_hint> ) ]

USING <table_source>

ON <search_condition>

<merge_clause> [ …n ]

[ OUTPUT <dml_select_list> ]

[ OPTION ( <query_hint> [ ,…n ] ) ]

;

<merge_clause>:=

{

WHEN MATCHED [ AND <search_condition> ]

THEN { UPDATE SET <set_clause> | DELETE }

| WHEN [ TARGET ] NOT MATCHED [ AND <search_condition> ]

THEN INSERT [ (column_list) ]

{ VALUES (values_list) | DEFAULT VALUES }

| WHEN SOURCE NOT MATCHED [ AND <search_condition> ]

THEN { UPDATE SET <set_clause> | DELETE }

}

Contoh penggunaan MERGE untuk sinkronisasi data

CREATE TABLE Original (o_pk INT PRIMARY KEY, o_name VARCHAR(10), o_number INT);

CREATE TABLE Replica (r_pk INT PRIMARY KEY, r_name VARCHAR(10), r_number INT);

CREATE PROCEDURE usp_SyncReplica AS

MERGE Replica

|

Page 112: Microsoft SQL Server Warna

USING Original

ON o_pk = r_pk

WHEN MATCHED

AND (o_name != r_name OR o_number != r_number) THEN

-- Row exists but data differs

UPDATE SET r_name = o_name, r_number = o_number

WHEN SOURCE NOT MATCHED THEN

-- Row exists in Replica but not Original

DELETE

WHEN NOT MATCHED THEN

-- Row exists in Original but not Replica INSERT VALUES (o_pk, o_name, o_number)

OUTPUT $action, inserted.r_pk, deleted.r_pk;

DAFTAR PUSTAKA

www.google.com

www.ilmukomputer.org

http://bangdanu.files.wordpress.com/2008/07/vbdatabase-sql1.pdf

http://www.quest.com/whitepapers/tuning_article_1_final.pdf

http://www.quest.com/whitepapers/sqltuningwp3.pdf

http://www.ebdesk.com/library/marketing/eXpert%20KM%20Server%20Installation

%20Guide(INA).pdf

http://www.itkomputer.com/index2.php?option=com_content&do_pdf=1&id=781

http://rofiqsiregar.wordpress.com/2007/05/11/instalasi-sql-server-2000/

|

Page 113: Microsoft SQL Server Warna

http://netindonesia.net/blogs/meidianto/archive/2010/01/08/memformat-nilai-integer-menjadi-2-digit-string-di-t-sql.aspx

http://www.codekeep.net/SQL/code/snippets/18489/TSQL-OPENQUERY-SYNTAX/view.aspx

http://www.codekeep.net/SQL/code/snippets/18486/TSQL-cursor/view.aspx

http://www.codekeep.net/SQL/code/snippets/18485/TSQL-transaction/view.aspx

http://netindonesia.net/blogs/kiki/archive/2009/10/10/tsql-enhancement-in-sql-server-2008.aspx

http://ilmukomputer.com/umum/choirul-sql.php

http://netindonesia.net/blogs/emantin34/archive/2009/08/29/merge-statement-in-sql-server-2008.aspx

http://prabelism.blogspot.com/2009/11/instal-sql-server.html

http://www.kompiku.com/2008/12/mengenal-dasar-perintah-sql.html

http://netindonesia.net/blogs/ziglaret/archive/2009/11/11/mengimpor-data-dari-excel-ke-sql-server-2005.aspx

http://www.foxitsoftware.com

|