BAB II TINJ AUAN PUSTAKA
2.8 Microsoft SQL Server 2008
SQL server merupakan salah satu dari sejumlah bahasa pemrograman database (DBMS) yang bersaing merebut popularitas bersama-sama dengan database foxpro, foxbase, quick silver dan lain-lain. SQL server kini mulai menjauhkan diri dan melangkah lebih jauh kedepan, terutama dengan munculnya versi SQL server 2008.
Menentukan bahasa mana yang terbaik untuk aplikasi database akan bersifat sangat subjektif. Namun, biasanya dukungan akan bahasa SQL (Structure Query Language), kriteria kecepatan, pemakaian memori, mudah tidaknya program, daya tampung data menjadi kriteria utama.
2. 8. 1. Daftar Tipe Data Dalam SQL Server 2008
Data dalam Microsoft SQL Server sangat berfariasi, dan setiap kolom dalam satu table harus memiliki data sesuai dengan jenis dan tipenya. Berikut ini beberapa tipe data yang ada di dalam Microsoft SQL Server
Tabel 2.1 Daftar Tipe Data Numeric SQL Server
Tipe data bit hanya bisa menerima input angka 1 dan 0 sebagai nilai (atau bisa juga null, yang berarti tidak ada nilai). Tipe data ini sangat membantu jika Anda ingin menghasilkan output yes/no, true/false, dsb. Dan untuk tipe data int Mendefinisikan bilangan bulat positif dan negative mulai dari range -2^63 sampai -2 ^ 15 -1, dan 0 sampai 255. Untuk data datetime Tipe data ini dapat menerima nilai tanggal dan waktu mulai dari 1 Januari 1753 hingga 31 Desember 9999. Tipe data ini menghabiskan 8 bytes untuk menyimpan data pada harddisk.
Numeric Keterangan
Bit Integer dengan nilai 0 atau 1 Int
Nilai Integer dengan nilai antara -2^ -3 (2.147.483.648) sampai 2^ 31-1
(2.147.384.647) Decimal atau
Numeric Angka antara -10^ 38-1 sampai 10^ 38-1
Money
Nilai yang terhubung dengan mata uang dari -2^ 63 (-922.377.203.685.477,5808 sampai 2^ 63-1 (-922.377.203.685.477,5807) Float -214.748,3648 sampai 1.79E+308 Real -3.40E+308 sampai 3.04E+38
Datetime 1 J anuar i 1973 sampai 31 Desember 9999
Smalldatetime 1 J anuar i 1900 sampai 6 J uni 2079, dengan ketelitian hingga1 menit
Tabel 2.2 Daftar Tipe Data String SQL Server
Tipe data ini mirip dengan tipe data char, namun tipe data ini berguna bagi Anda yang tidak mengetahui secara pasti jumlah karakter yang akan dimasukkan oleh user. Tipe data ini juga bisa menerima nilai hingga 8000 karakter.
String Keterangan
Char Field tetap dengan ukur an maksimal 8000 byte
Varchar Field tetap dengan ukur an maksimal 8000 byte
Text Variabel dengan ukur an hingga 2^ 31-1 (2.147.488.647) byte
Tabel 2.3 Daftar Tipe Data Unicode SQL Server
Untuk membuat program internasional dengan menggunakan terdiri dari banyak bahasa dan membutuhkan unicode. SQL server menyediakan tipe data string yang support unicode, yaitu dengan menambahkan huruf ’n’ pada tipe-tipe data string. Contohnya : nchar, ncarchar, ntext. Akan tetapi dengan menggunakan unicode ini maka disk space yang dibutuhkan juga semakin tinggi.
Unicode Str ing Keterangan
Nchar Karakter Unicode dengan ukur an tetap hingga 4000 byte
Ncar char Karakter Unicode dengan ukur an bervariasi hingga 4000 byte
Ntext Variabel dengan ukur an sampai 2^ 31-1 (2.147.483.647) byte
Tabel 2.4 Daftar Tipe Data Binary SQL Server
Tipe data ini berguna untuk menyimpan data binary yang tidak diketahui dengan pasti jumlah bytes datanya.
Binar y Str ing Keterangan
Binar y Ukuran tetap hingga 8000 byte Varbinary Ukuran bervariasi hingga 8000 byte Image Ukuran bervariasi hingga 2^ 31-1
(2.147.483.647) byte
2. 8. 2. Batasan SQL Ser ver 2008
Microsoft SQL Server mempunyai beberapa batasan dimana batasan tersebut memiliki prioritas diatas trigger, aturan dan nilai defaultnya.
Tabel 2.5 Daftar Tipe Data Binary SQL Server Fungsi Keterangan
NOT NULL
Menentukan bahwa kolom tidak bias menentukan nilai NULL
CHECH
Membatasi nilai yang bias diletakkan kedalan kolom dengan menentukan suatu kondisi.
Misalnya nilai TRUE maka nilai yang diberikan dapat dimasukkan kedalam kolom sedang apabila FLASE
UNIQUE Memasukkan kolom-kolom memiliki nilai eksklusif
PRYMARY KEY
Membuat kata kunci primer atau kunci utama dar i sebuah table, kolom atau kombinasi dar i kolom dengan nilai yang har us ber sifat
eksekutif didalam table untuk mengenali baris FOREIGN
2. 8. 3. J enis – J enis Perintah SQL Server 2008
Secara garis besar, SQL Server mempunyai 3 (Tiga) jenis Transact SQL yaitu :
A. Data Definition Language (DDL)
merupakan bagian dari sistem manajemen database yang dipakai untuk mendefinisikan dan mengatur semua atribut dan properti dari sebuah database. Contoh perintah yang termasuk DDL adalah :
- CREATE
CREATE digunakan untuk membuat basis data maupun objek-objek basis data. SQL yang umum digunakan adalah:
“CREATE DATABASE nama_basis_data” CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [constraints], nama_field2 tipe_data […]
)
Keterangan :
o nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada nama kolom.
o tipe_data tergantung implementasi sistem manajemen basis data. Misalnya, pada MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan sebagainya.
o constraints adalah batasan-batasan yang diberikan untuk tiap kolom. Ini juga tergantung implementasi sistem manajemen basis data, misalnya NOT NULL, UNIQUE, dan sebagainya. Ini dapat digunakan untuk mendefinisikan kunci primer (primary key) dan kunci asing (foreign key).
Satu tabel boleh tidak memiliki kunci primer sama sekali, namun sangat disarankan mendefinisikan paling tidak satu kolom sebagai kunci primer. Contoh:
CREATE TABLE user (
username VARCHAR(30) CONSTRAINT PRIMARY KEY, password VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME );
B. Data Manipulation Language (DML)
Merupakan perintah – perintah yang digunakan untuk menampilkan, menambah, mengubah, dan menghapus data di dalam obyek – obyek yang didefinisikan oleh DML. Contoh perintah yang termasuk DML adalah :
- SELECT
SELECT adalah perintah yang paling sering digunakan pada SQL, sehingga kadang-kadang istilahquery dirujukkan pada perintah SELECT.
SELECT digunakan untuk menampilkan data dari satu atau lebih tabel, biasanya dalam sebuah basis data yang sama. Secara umum, perintah SELECT memiliki bentuk lengkap:
“SELECT [nama_tabel|alias.]nama_field1 [AS alias1] [, nama_field2, ...] FROM nama_tabel1 [AS alias1] [INNER|LEFT|RIGHT JOIN tabel2 ON kondisi_penghubung] [, nama_tabel3 [AS alias3], ...] [WHERE kondisi] [ORDER BY nama_field1 [ASC|DESC][, nama_field2 [ASC|DESC], ...]] [GROUP BY nama_field1[, nama_field2, ...]] [HAVING kondisi_aggregat]”
Keterangan :
o kondisi adalah syarat yang harus dipenuhi suatu data agar ditampilkan.
o kondisi_aggregat adalah syarat khusus untuk fungsi aggregat.
o Kondisi dapat dihubungkan dengan operator logika, misalnya AND, OR, dan sebagainya.
SELECT username FROM user WHERE jml_transakai < 10 AND total_transaksi > 1000
- INSERT
Untuk menyimpan data dalam tabel dipergunakan sintaks:
INSERT INTO [NAMA_TABLE] ([DAFTAR_FIELD]) VALUES ([DAFTAR_NILAI])
Contoh:
“INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES ('test', 'alamat', 'pass');”
- UPDATE
Untuk mengubah data menggunakan sintaks:
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE [KONDISI]
Contoh:
UPDATE Msuser set password="123456" where username="abc"
- DELETE
Untuk menghapus data dipergunakan sintaks: DELETE FROM [nhew andiz] [KONDISI] Contoh:
“DELETE FROM TEST WHERE NAMA='test';”