Professional Documents
Culture Documents
DAFTAR ISI
Daftar isi.......................................................................................................................... 2
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.
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.
jadwal tugas pemeliharaan umum atau membuat dan memodifikasi struktur database
individu.
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.
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.
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.
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
DTS Improvements
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
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.
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:
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 :
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.
Proses BI dalam SQL Server 2005 terbagi dalam 3 tahap yaitu Integrasi, Analisis, dan
Penyajian laporan.
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.
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.
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
untuk membaca kecenderungan data dalam proses data mining. OLAP menyediakan cara
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.
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.
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.
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
Selanjutnya pilih Create New Instance agar SQL Server membuat instalasi baru.
Tipe instalasi Typical sudah cukup mewakili untuk berbagai feature yang dibutuhkan
dalam membuat aplikasi.
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.
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.
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.
S e t e l a h i t u t e
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.
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.
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
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
Isikan nama Anda dan nama perusahaan Anda di halaman berikutnya, jika sudah
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.
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 )
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.
Berikut ini adalah daftar jenis-jenis aplikasi yang dapat menghasilkan Transact-SQL:
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.
2. State Transaksi
3. Commit
Database Security:
1. Encrypt
2. Otorisasi
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
Database Server | Desy & Maya _^
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
SQL-DMO untuk memecahkan problem tersebut. Dikarenakan aplikasi tersebut harus bisa
online maka untuk prgrammingnya saya pilih ASP.
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 :
Syntax
<nama_kolom> <tipe_data>(<panjang_data>)
[referential_constraint_defenition>] [CHECK<constraint_defenotion>],
<nama_kolom> <tipe_data>(<panjang_data>)
...
);
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.
Contoh :
No_Induk CHAR(8),
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
Kode CHAR(4),
Nama CHAR(20),
Kelas CHAR(2)
);
No_Induk CHAR(8),
Kode CHAR(4),
Nl_Angka Number
);
Syntax
...
[<nama_kolom><tipe_data>(<panjang_data>)REFERENCES<nama_tabel>(<nama_kolom>
), . . . ]
Contoh :
Nama CHAR(20),
Tgl_Lahir DATE,
Kelas CHAR(2)
);
Nama CHAR(20),
Kelas CHAR(2)
);
Nilai Number
);
Syntax
Keterangan
Contoh :
Syntax
Contoh :
Syntax
Contoh :
Tgl_Lahir DATE,
Kelas CHAR(2)
);
Syntax
UPDATE <nama_tabel>
<nama_kolom2= ‘nilai_kolom2’>,
... ,
<nama_kolomN= ‘nilai_kolomN’>
[WHERE <kondisi>];
Contoh :
Syntax
WHERE <kondisi>;
Contoh :
Syntax
FROM <nama_tabel>
WHERE <kondisi>
[AND <kondisi>]
Contoh :
Syntax
FROM <nama_tabel>
WHERE <kondisi>;
Syntax
COMMIT [WORK];
Contoh :
Syntax
ROLLBACK [WORK];
Syntax
GRANT <spesifikasi_akses>
ON <nama_tabel/nama_view> TO <nama_user>
Syntax
REVOKE <spesifikasi_akses>
FROM <nama_user>;
Spesifikasi akses
EKSPRESI
FROM
WHERE
Contoh :
GROUP BY
Syntax :
FROM <nama_tabel>
WHERE <kondisi>
GROUP BY <group_kolom>;
ORDER BY
FROM <nama_tabel>
WHERE <kondisi>
HAVING
Syntax :
FROM <nama_tabel>
WHERE <kondisi>
GROUP BY <group_kolom>
HAVING <batasan_group>;
Contoh :
HAVING Nilai>80;
COMPARISON
Pembanding dua nilai dengan syarat type data yang dibandingkan harus sama
BETWEN
Syntax :
IN
Syntax :
IN ( ... )
IN SELECT ...
Contoh :
EXIST
WHERE EXIST (
WHERE a.No_Induk=b.No_Induk);
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
---------
5. LEN
Kegunaan : Menghasilkan panjang dari suatu karakter/kata/kalimat.
Sintaks : LEN(<char_expression>)
Contoh :
SELECT LEN(‘ ABCD ‘) AS total_length
total_length
------------
5
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>)
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 ***
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
UPPERCASE
-------------
STRING
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
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
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
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
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
Membuat 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.
File Name dan Location, untuk memberi nama file dan meletakkan file
database tersebut di suatu lokasi folder yang diinginkan.
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:
Transaction Log, adalah file ynag menyimpan histori transaksi dan semua
kejadian di database tersebut.
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.
Setiap tabel sebaiknya dilengkapi dengan primary key yang merupakan identitas
unik dari setiap baris data. Dengan demikian apabila dalam suatu tabel terdapat sekian ribu
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.
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
Pilih 2 tabel Pelanggan dan Order dan klik Add sehingga keduanya menjadi anggota diagram.
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.
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.
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
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.
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.
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.
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.
4. Klik OK setelah selesai, maka hasil pemilihan lokasi ditampilkan di property backup.
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.
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.
returns smallint as
----------------------------------------------------
-- * http://www.wisesoft.co.uk
-- * Usage:
-- * select dbo.fAgeCalc('1982-04-18',GetDate())
-- * select dbo.fAgeCalc('1982-04-18','2006-11-03')
----------------------------------------------------
begin
return (
then datediff(yyyy,@DOB,@Date)-1
end)
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.
View Sederhana
3. Pilih New maka akan muncul sub menu seperti di bawah ini.
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.
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.
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.
SET p = AG.psw
WHERE n = AG.name
FROM @agentTmp
FOR
Select id
Open UniqueNameCursor
BEGIN
END
CLOSE UniqueNameCursor
DEALLOCATE UniqueNameCursor
Title: T-SQL transaction Language: SQL Description: Template for try-catch with transaction
BEGIN TRY
BEGIN TRAN
COMMIT TRAN
END TRY
BEGIN CATCH
DECLARE @r nvarchar(max)
SELECT @r = ERROR_MESSAGE()
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.
A. TSQL "Delighters"
UPDATE dbo.myT
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
USE AdventureWorks
GO
USE AdventureWorks
GO
As
BEGIN
END
use AdventureWorks
Go
VALUES(1,'John McLean','JohnMcLean@contoso.com')
VALUES(2,'Bob Smith','BobSmith@contoso.com')
VALUES(3,'Ted Connery','TedConnery@contoso.com')
--- Panggil SP
Tracking inventory
-> INSERT new stock, UPDATE existing stock, DELETE when amount is zero
MERGE
USING <table_source>
ON <search_condition>
<merge_clause> [ …n ]
[ OUTPUT <dml_select_list> ]
<merge_clause>:=
MERGE Replica
ON o_pk = r_pk
WHEN MATCHED
DELETE
-- Row exists in Original but not Replica INSERT VALUES (o_pk, o_name,
o_number)
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/
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