BAB 1
PENDAHULUAN
1.1 Latar Belakang
SQL singkatan dari Structured Query Language. SQL adalah bahasa yang
memungkinkan Anda untuk bekerja dengan database. Menggunakan SQL, Anda
dapat menyisipkan catatan, catatan update, dan menghapus catatan. Anda juga dapat
membuat objek database baru seperti database dan tabel. Dan Anda bisa drop
(menghapus) mereka.
Lebih banyak fitur canggih termasuk prosedur yang tersimpan menciptakan (diri
berisi script), pandangan (pre-made query), dan pengaturan hak akses pada objek
database (seperti tabel, prosedur tersimpan, dan pandangan).
Meskipun SQL adalah ANSI (American National Standards Institute) standar, ada
banyak versi yang berbeda dari SQL. Vendor database yang berbeda memiliki
variasi mereka sendiri bahasa.
Setelah mengatakan hal ini, harus sesuai dengan standar ANSI, mereka harus
setidaknya mendukung perintah utama seperti DELETE, INSERT,
UPDATE,WHERE Anda akan menemukan bahwa banyak vendor memiliki
ekstensi sendiri untuk bahasa fitur yang hanya didukung dalam sistem database
mereka.
2
Selain itu, bertransaksi-SQL adalah ekstensi dengan standar ANSI dan
menyediakan fungsionalitas tambahan.
1.2 Tujuan Penulisan
Untuk membangun sebuah website dengan database yang menyediakan konten,
biasanya Anda akan memerlukan berikut ini:
a) Sebuah bahasa script sisi server (yaitu ColdFusion, PHP, ASP / NET)
b) Sebuah query database bahasa (yaitu SQL)
c) Sebuah sisi klien markup bahasa dan style sheet (yaitu HTML / CSS)
Meskipun SQL bisa sangat terlibat, Anda dapat mencapai banyak dengan
beberapa pernyataan SQL. Bila menggunakan SQL pada sebuah situs web, Anda
akan sering menemukan diri Anda baik memilih catatan, memasukkan catatan,
memperbarui rekor, atau menghapus catatan. Untungnya, SQL memiliki perintah
untuk melakukan masing-masing tindakan.
BAB 2
PEMBAHASAN
2.1 Pengenalan Microsoft SQL Server
Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional
(RDBMS) produk Microsoft. Bahasa kueri utamanya adalah Transact-SQL yang
merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh
Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia bisnis yang
memiliki basis data berskala kecil sampai dengan menengah, tetapi kemudian
berkembang dengan digunakannya SQL Server pada basis data besar.
2.1.1 Sejarah SQL
Sejarah SQL dimulai dari artikel seorang peneliti dari IBM bernama Jhonny Oracle
yang membahas tentang ide pembuatan basis data relasional pada bulan Juni 1970.
Artikel ini juga membahas kemungkinan pembuatan bahasa standar untuk
mengakses data dalam basis data tersebut. Bahasa tersebut kemudian diberi
nama SEQUEL (Structured English Query Language).
Setelah terbitnya artikel tersebut, IBM mengadakan proyek pembuatan basis data
relasional berbasis bahasa SEQUEL. Akan tetapi, karena permasalahan hukum
mengenai penamaan SEQUEL, IBM pun mengubahnya menjadi SQL. Implementasi
basis data relasional dikenal dengan System/R.
4
Saat ini, ANSI dan ISO merupakan 2 organisasi yang membuat standarisasi terhadap
SQL. SQL membuat pemograman dan seorang administrator database dapat
melakukan hal-hal sebagai berikut
a. Mengubah struktur sebuah database.
b. Mengubah pengaturan keamanan sistem.
c. Memberikan hak akses kepada pengguna untuk mengakses database atau tabel.
d. Memperoleh informasi dari database.
e. Memutakhirkan isi database.
Di akhir tahun 1970-an, muncul perusahaan bernama Oracle yang membuat server
basis data populer yang bernama sama dengan nama perusahaannya. Dengan
naiknya kepopuleran John Oracle, maka SQL juga ikut populer sehingga saat ini
menjadi standar de facto bahasa dalam manajemen basis data.
2.1.2 Kelebihan SQL Server
1. MS SQL Server mendukung adanya SP
SP memang bagus, tapi tidak bagus jika salah dan asal-asalan dalam
membuatnya. Kalau anda asal-asalan maka ini akan menyebabkan program anda
tidak efektif dan terkesan tidak praktis. SP merupakan suatu perintah yang
disimpan dalam server, dan kita bisa menganalogikan seperti ini. Jika dalam suatu
kota ada trayek bus kota. kita kondisikan jalan itu sebagai bandwidth, nah kalau
tiap penumpang diberikan satubus kota, maka yang terjadi adalah makin banyak
peluang bus yangada dijalan. Jika tipa penumpang mempunyai 5 tujuan yang
berbeda, maka punumpang itu berarti memiliki 5 bus. Nah jika dalam waktu
bersamaan bus pada jalan semua, maka jalan jadi macet. Nah kalau udah macet,
maka jadi nggak bisa berjalan. Kondisi ini dalam komputer kita dinamakan
kondisi hang.
5
Nah hubungannya dengan SP adalah, SP bisa mengurani Network Traffic,
sehingga untuk bus tujuan yang sama bisa dipakai oleh banyak. penumpang dan
dengan demikian, karena kondisi tidak macet, makabus tersebut bisa diijinkan
berjalan dengan kecepatan 200 km/jam nah dengan demikian prosesnya jadi cepat
dan dengan waktu yang cepat juga bisa melayani penumpang yang lain. Jadi
kesimpulannya adalah dengan SP bisa membuat program aplikasi database anda
jadi lebih cepat dan bisa men-tuning transact SQL anda. Kemudian kelebihan dari
SP, adalah bisa n-tier, artinya untuk 1 SP bisa memiliki beberapa proses yang
berbeda-beda.
2. MS SQL Server mendukung adanya Trigger
Dengan adanya trigger dalam database, maka program aplikasi database kita akan
menjadi lebih sempurna, karena disini kalau anda jeli bisa menggunakan konsep
trigger untuk AI, yang mana membuat aplikasi anda saat dijalankan tidak terasa
kalau proses sudah selesai dikerjakan. Dengan trigger anda bisa memberikan
tingkah laku atau kondisi terhadap suatu tabel jika dilakukan proses penambahan,
penghapusan ataupun proses peng-update-an. Dengan demikian anda tidak perlu
lagi repot-repot membuat perintah baru lagi di listing program delphi. Trigger
juga memberikan kemampuan lebih dalam hal processing data sebagai contoh,
anda bisa menjalankan SP yang telah kita buat dari sini.
3. MS SQL Server mendukung adanya cursor
Kemudian kelebihan lain adalah cursor, jadi kita bisa mapping record terhadap
tabel yang kita proses.
4. MS SQL Server mendukung adanya function dan beberapa transact SQL yang
lain.
Jika anda bisa menggabungkan keempat feature yang dimiliki oleh MS SQL
Server, maka saya yakin program anda akan stabil dan dijamin kecepatannya.
6
2.1.3 Kekurangan SQL Server
1. Merupakan aplikasi berbayar,yang mana bila kita mennggunakan
aplikasi tersebut secara resmi, kita harus mengeluarkan dana agak besar untuk
software ini.
2. Mempunyai banyak BUG, sehingga kalau tidak hati-hati, bisa-bisa di
explot dari luar contoh, file databasenya bisa dengan mudah di attach ataupun
di-remove dari system sql server
2.2 Tipe Data SQL Server
2.2.1 Numerik
1. Bigint
Nilai integer dengan nilai dari -2^63 (9223372036854775808) sampai 2^63-
(9223372036854775807)
2. Int
Nilai integer dengan nilai dari -2^31 (2,147,483,648) sampai 2^31-1
(2,147,483,647).
3. Smallint
Nilai integer dengan nilai dari 2^15 (-32,768) sampai2^15 1 (32,767).
4. Tinyint
Nilai integer dengan nilai 0 samapi 255.
5. Bit
Nilai integer dengan nilai 1 atau 0.
7
6. Decimal Dan Numeric
Angka dengan akurasi tetap dan -10^38+1 sampai 10^38-1.
2.2.2 Money
1. Money
Data dengan nilai mata uang -2^63 (922,337,203,685,477.5808) sampai 2^63-
1(+922,337,203,685,477.5807)
2. SmallMoney
Data dengan nilai mata uang -214,748.3648 sampai +214,748.3647
2.2.3 Numeric Precission
1. Float
Bilangan presisi dari -1,79E + 308 sampai 1,79E +308.
2. Real
Bilangan presisi dari -3,40E + 38 sampai 3,40E + 38.
2.2.4 Date Time
1. Datetime
Tanggal dan waktu dari Januari 1, 1753 sampai Desember 31,9999 dengan
akurasi sampai 3,33milidetik.
2. Smalldatetime
Tanggal dan waktu dari Januari 1, 1990 sampai Juni 6, 2079 dengan akurasi satu
menit
8
2.2.5 Strings
1. Char
Field berisi karakter dengan ukuran panjang tetap dengan panjang maksimum
8,000 karakter.
2. Varchar
Fiels berisi karakter dengan panjang ukuran tidak tetap dengan panjang
maksimum 8,000 karakter.
3. Text
Variabel berisi karakter dengan ukuran panjang sampai 2^31-1 (2,147,483,647)
karakter
2.2.6 Unicode Character Strings
1. Nchar
Karakter unicode dengan ukuran panjang teta 4,000 karakter.
2. Nvarchar
Karakter dengan panjang tidak tetap hingga 4,000 karakter.
3. Ntext
Karakter dengan panjang tidak tetap hingga of 2^30(1,073,741,823) karakter.
2.2.7 Binary Strings
1. Binary
Ukuran tetap data binary hingga 8,000 bytes.
2. Varbinary
Ukuran panjang tidak tetap data binary hingga 8,000 bytes.
9
3. Image
Ukuran tidak tetap data binary hingga 2^31-(2,147,483,647) bytes
2.2.3 Tipe Data Lain
1. Cursor
Referensi ke cursor.
2. Timestamp
Angka ekslusif yang dikenali oleh database
2.3 Sejarah Microsoft SQL Server
Pada tahun 1988, Microsoft mengeluarkan versi pertama dari SQL Server. Pada saat
itumasih 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
10
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 tahun2000 Microsoft mengeluarkan SQL. Versi SQL
Server 2000 ini berbasis pada framework yang ada pada versi 7.0 sebelumnya.
2.4 SQL
SQL (Structured Query Language) adalah sebuah bahasa yang dipergunakan untuk
mengakses data dalam basis data relasional. Bahasa ini secara de facto merupakan
bahasa standar yang digunakan dalam manajemen basis data relasional. Saat ini
hampir semua server basis data yang ada mendukung bahasa ini untuk melakukan
manajemen datanya.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language
(DDL) dan Data Manipulation Language (DML). Implementasi DDL dan DML
berbeda untuk tiap sistem manajemen basis data (SMBD), namun secara umum
implementasi tiap bahasa ini memiliki bentuk standar yang ditetapkan ANSI. Artikel
ini akan menggunakan bentuk paling umum yang dapat digunakan pada kebanyakan
SMBD.
Secara umum, SQL terdiri dari dua bahasa, yaitu Data Definition Language
(DDL) dan Data Manipulation Language (DML).
2.4.1. Data Definition Language
DDL digunakan untuk mendefinisikan, mengubah, serta menghapus basis data dan
objek-objek yang diperlukan dalam basis data, misalnya tabel, view, user, dan
sebagainya. Secara umum, DDL yang digunakan adalah CREATE untuk membuat
objek baru, USE untuk menggunakan objek, ALTER untuk mengubah objek yang
11
sudah ada, dan DROP untuk menghapus objek. DDL biasanya digunakan oleh
administrator basis data dalam pembuatan sebuah aplikasi basis data.
CREATE digunakan untuk membuat basis data maupun objek-objek basis data.
SQL yang umum digunakan adalah:
Create Database nama_basis_data
Create Database berfungsi sebuah basis data baru.
Create Table nama_tabel
Create Table berfungsi membuat tabel baru pada basis data yang sedang aktif.
Secara umum, perintah ini memiliki bentuk
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [constraints][,
nama_field2 tipe_data,
...]
)
atau
CREATE TABLE [nama_tabel]
(
nama_field1 tipe_data [,
nama_field2 tipe_data,
...]
[CONSTRAINT nama_field constraints]
)
dengan:
nama_field adalah nama kolom (field) yang akan dibuat. Beberapa sistem
manajemen basis data mengizinkan penggunaan spasi dan karakter nonhuruf pada
nama kolom.
12
Tipe_data tergantung implementasi sistem manajemen basis data. Misalnya, pada
MySQL, tipe data dapat berupa VARCHAR, TEXT, BLOB, ENUM, dan
sebagainya.
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,
passwd VARCHAR(20) NOT NULL,
tanggal_lahir DATETIME
);
2.4.2. Data Manipulation Language
DML digunakan untuk memanipulasi data yang ada dalam suatu tabel. Perintah yang
umum dilakukan adalah:
1. SELECT untuk menampilkan data
2. INSERT untuk menambahkan data baru
3. UPDATE untuk mengubah data yang sudah ada
4. DELETE untuk menghapus data
SELECT adalah perintah yang paling sering digunakan pada SQL, sehingga
kadang-kadang istilah query dirujukkan pada perintah SELECT. SELECT digunakan
untuk menampilkan data dari satu atau lebih tabel, biasanya dalam sebuah basis data
13
yang sama. Secara umum, perintah SELECT memiliki bentuk lengkap: ( QUERY
BUDIN ) Cilegon.
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]
Contoh 1: Tampilkan seluruh data.
SELECT * FROM user
Contoh 2: Tampilkan pengguna yang tidak pernah bertransaksi.
SELECT *FROM user
WHERE total_transaksi = 0
Contoh 3: Tampilkan username pengguna yang bertransaksi kurang dari 10 dan
nilainya lebih dari 1.000.
SELECT username FROM user
WHERE jml_transakai < 10 AND total_transaksi > 1000
Contoh 4: Tampilkan total nominal transaksi yang sudah terjadi.
SELECT SUM(total_transaksi) AS total_nominal_transaksi FROM user
Contoh 5: Tampilkan seluruh data diurutkan berdasarkan jumlah transaksi terbesar
ke terkecil.
SELECT * FROM user
ORDER BY jml_transaksi DESC
Beberapa SMBD memiliki fungsi aggregat, yaitu fungsi-fungsi khusus yang
melibatkan sekelompok data (aggregat). Secara umum fungsi aggregat adalah:
14
1. SUM untuk menghitung total nominal data
2. COUNT untuk menghitung jumlah kemunculan data
3. AVG untuk menghitung rata-rata sekelompok data
4. MAX dan MIN untuk mendapatkan nilai maksimum/minimum dari
Sekelompok data.
Fungsi aggregat digunakan pada bagian SELECT. Syarat untuk fungsi aggregat
diletakkan pada bagian HAVING, bukan WHERE.
2.4.3. Fungsi Aggregat
Beberapa Sistem Manajemen Basis Data memiliki fungsi aggregat, yaitu fungsi-
fungsi khusus yang melibatkan sekelompok data (aggregat). Secara umum fungsi
aggregat adalah:
a. SUM untuk menghitung total nominal data
b. COUNT untuk menghitung jumlah kemunculan data
c. AVG untuk menghitung rata-rata sekelompok data
d. MAX dan MIN untuk mendapatkan nilai maksimum/minimum dari sekelompok
data.
Fungsi aggregat digunakan pada bagian SELECT. Syarat untuk fungsi aggregat
diletakkan pada bagian HAVING, bukanWHERE.
2.4.4. Subquery
Ada kalanya query dapat menjadi kompleks, terutama jika melibatkan lebih dari satu
tabel dan/atau fungsi aggregat. Beberapa SMBD mengizinkan penggunaan subquery.
Contoh: Tampilkan username pengguna yang memiliki jumlah transaksi terbesar.
15
2.4.5. Insert
Insert digunakan untuk menyimpan data dalam tabel digunakan sintaks :
Apabila kita menginginkan semua field pada tabel terisi semua, kita tidak perlu
menuliskan satu persatu nama field-nya. Cukup nilai values-nya saja, dengan syarat
urutan field dan values harus sesuai. Contoh :
INSERT INTO TEST (NAMA, ALAMAT, PASSWORD) VALUES
('test','alamat','pass');
2.4.6 Update
Update digunakan untuk mengubah data dengan menggunakan sintax :
UPDATE [NAMA_TABLE] SET [NAMA_KOLOM]=[NILAI] WHERE
[KONDISI]
2.4.8 Delete
16
Delete digunakan untuk menghapus data dipergunakan sintaks :
2.4.9. Penggunaan Join
SQL JOIN menggabungkan dari dua atau lebih tabel dalam basis data. Ini
menciptakan satu set yang dapat disimpan sebagai meja atau digunakan sebagaimana
mestinya. Sebuah JOIN adalah sarana untuk menggabungkan bidang dari dua tabel
dengan menggunakan nilai-nilai bersama untuk masing-masing. Standar ANSI SQL
menetapkan empat jenis : JOIN : INNER , OUTER , LEFT JOIN , dan RIGHT
JOIN.
2..4.10. Inner Join
Inner join merupakan jenis join yang paling umum yang dapat digunakan pada
semua database. Jenis ini dapat digunakan bila ingin merelasikan dua set data yang
ada di tabel, letak relasinya setelah pada perintah ON pada join. Bentuk baku
perintah inner join :
Contoh : Tampilkan nip, nama dan gaji semua pegawai.
2.4.11. Outer Join
SELECT <field1>,<field2>,<fieldn> FROM <tabel1> INNER JOIN <tabel2> ON <key.tabel1> = <key.tabel2>
select i.nip,i.nama,p.gaji from infoprib iinner join pekerjaan p on i.nip = p.nip;
17
Outer join merupakan jenis join yang sedikit berbeda dengan inner join. Pada
MySQL, bentuk perintah untuk menerapkan outer join ada 2 yaitu LEFT
JOIN dan RIGHT JOIN.
1. Left Join
Left join digunakan dalam situasi ketika ingin mengembalikan semua elemen data set
A, terlepas dari apakah nilai kunci ada dalam data set B.
2. Right Join
Right join digunakan dalam situasi ketika ingin mengembalikan semua elemen data
set B, terlepas dari apakah nilai kunci ada dalam data set A.
2.5. PHP (Hypertext Preprocessor)
PHP adalah salah satu bahasa pemrograman dalam pembuatan web. PHP bersifat
server side dan bisa dikoneksikan dengan database seperti MySQL, PostgreSQL,
SQL server, Oracle, dsb. Karena PHP bersifat server side, maka untuk dapat
menjalankan PHP pada browser, maka anda diharuskan terlebih dahulu menginstall
web server yang bisa anda dapatkan secara gratis dari internet, misalnya Apache,
PHP Triad, PWS, Wammp, Xampp, dsb.
PHP disimpan dalam file berekstensi .php, .php3 atau .phtml, itu tergantung
dengan settingan PHP anda, tetapi secara umum ekstensi file PHP adalah .php. Kode
PHP menyatu dengan tag-tag HTML dalam satu file. Kode PHP diawali dengan tag
<? atau <?php dan ditutup dengan ?>.
SELECT <field1>,<field2>,<fieldn> FROM <tabel1> LEFT JOIN <tabel2> ON <key.tabel1> = <key.tabel2>
SELECT <field1>,<field2>,<fieldn> FROM <tabel1> RIGHT JOIN <tabel2> ON <key.tabel1> = <key.tabel2>
18
Ketik sintaks seperti di bawah ini menggunakan notepad atau program lain
yang bisa mendukung file PHP.
Kemudian simpan di direktori web server anda biasanya bernama htdocs
dengan nama info.php.
Setelah disimpan, aktifkan web server dan buka browser anda kemudian ketik
localhost/info.php
Struktur penulisan dalam PHP, sama seperti dalam C++, yaitu setiap
pernyataan diakhiri oleh semicolon ( ; ) dan bersifat case sensitive untuk penulisan
nama variabel. Cara penulisan komentar dalam PHP juga sama seperti C++.
contoh1.php <?
$nama = "belajar php";
print "Isi dari variabel adalah $nama";
?>
2.5.1 Sejarah PHP
Pada awalnya PHP merupakan kependekan dari Personal Home Page (Situs
personal). PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada
waktu itu PHP masih bernama Form Interpreted (FI), yang wujudnya berupa
<?phpinfo();
?>
19
sekumpulan skrip yang digunakan untuk mengolah data formulir dari web.
Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan
menamakannya PHP/FI. Dengan perilisan kode sumber ini menjadi sumber terbuka,
maka banyak pemrogram yang tertarik untuk ikut mengembangkan PHP.
Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini, interpreter PHP sudah
diimplementasikan dalam program C. Dalam rilis ini disertakan juga modul-modul
ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan. Pada tahun 1997,
sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih
bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998, perusahaan tersebut
merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP
3.0 dan singkatan PHP diubah menjadi akronim berulang PHP: Hypertext
Preprocessing
Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis
tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling banyak
dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan kemampuannya
untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan
stabilitas yang tinggi. Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti
dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan
model pemrograman berorientasi objek ke dalam PHP untuk menjawab
perkembangan bahasa pemrograman ke arah paradigma berorientasi objek.
2.5.2 Kelebihan PHP
Beberapa kelebihan PHP dari bahasa pemrograman web, antara lain:
a. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan
sebuah kompilasi dalam penggunaanya.
b. Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai
Apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi yang relatif mudah.
20
c. Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan
developer yang siap membantu dalam pengembangan.
d. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah
karena memiliki referensi yang banyak.
e. PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux,
Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console
serta juga dapat menjalankan perintah-perintah system.
2.5.3 Jenis Tipe Data
2.5.3.1 Scalar Type
Scalar Type adalah tipe data yang hanya memuat satu data dalam variabel. Tipe
Data yang termasuk kedalam Tipe Scalar adalah:
2.5.3.1.1 Integer
Integer merupakan sebuah bilangan yang memiliki lebar dari –2,147,483,648 ke
+2,147,483,647 dalam sebuah komputer 32-bit, lebar ini sama dengan lebar yang
dimiliki oleh long data dalam bahasa C. PHP mengijinkan penulisan integer dalam
tiga cara: desimal, oktal maupun heksadesimal.
Desimal merupakan bilangan yang berdasar pada bilangan 10 angka, bilangan ini
merupakan bilangan yang kita gunakan sehari-hari. Dalam penulisan integer anda
dapat menuliskannya tanpa menulis angka nol (0) di depan, dan dapat dimulai
dengan tanda plus (+) ataupun minus (-) untuk memberitahu bilangan tersebut
merupakan bilangan positif atau negatif, namun yang harus diingat adalah dalam
integer anda tidak dapat memasukkan bilangan koma dalam sebuah bilangan integer.
21
Oktal merupakan bilangan yang berbasis pada delapan angka dari 0 hingga 7.
Dalam penulisan bilangan oktal didahului dengan penulisan angka nol (0). Bilangan
oktal ini berfungsi dalam beberapa konteks, seperti penulisan perijinan sebuah data
(file permission). Bagi anda yang telah mengenal sistem UNIX, pasti tahu untuk
merubah perijinan dari pemilik menjadi terbuka bagi user, file permission file
tersebut harus di ubah menjadi 0777.
Heksadesimal merupakan bilangan yang berbasi pada 16 bilangan, dimulai
dengan 0x kemudian diikuti dengan angka dari 0 hingga 9 atau huruf dari A hingga
F. Dalam heksadesimal ini penulisan huruf besar atau huruf kecil tidak menjadi
masalah.
2.5.3.1.2 Float/Real
Float merupakan tipe data yang berisikan bilangan real negatif dan positif atau yang
memiliki nilai pecahan.
2.5.3.1.3 Boolean
Tipe data ini adalah tipe data yang paling sederhana. Hanya berupa true atau false.
Cara memasukan ke dalam variabel adalah dengan memberikan nilai
true atau false pada variabel tersebut.
Setiap Tipe Data dalam PHP mempunyai Boolean untuk melakukan Seleksi
Kondisi dan Tipe Data tersebut akan memberikan nilai true atau false pada seleksi
kondisi tersebut.
a. Pada Variabel yang bertipe Data integer=0 (nol) mempunyai boolean false, selain
itu true.
b. Pada Variabel yang bertipe Data float=0.0 (nol) mempunyai boolean false, selain
itu true.
22
c. Pada Tipe Data string yang kosong, dan string="0" mempunyai boolean false,
selain itu true.
d. Array yang tidak mempunyai element mempunyai boolean false, selain itu true.
e. Objek yang tidak mempunyai member mempunyai boolean false, selain itu true.
f. Tipe NULL dan Variabel yang belum terisi mempunyai boolean false.
2.5.3.1.4 String
String merupakan Tipe Data yang berisikan satu atau kumpulan karakter.
2.5.3.2 Compound Type
Compound Type adalah tipe data yang dapat mempunyai lebih dari satu elemen.
Tipe Data yang termasuk kedalam Tipe Compound adalah:
2.5.3.2.1 Array
Array merupakan Tipe Compound Primitif, terdapat pada bahasa-bahasa
pemrograman lain. Tipe Data ini dapat memuat beberapa elemen, dan Isi Data
untuk elemen array tersebut juga bisa bertipe array dan tipe scalar, compound atau
special.
2.5.3.2.2 Object
Tipe Data ini adalah tipe data baru pada PHP yang dapat digunakan untuk
membangun suatu program web yang berbasiskan object oriented. Isi dari Tipe Data
ini bisa berupa Fungsi dan Variabel dan bisa terdiri dari beberapa elemen.
2.5.3.3 Special Type
23
Ada dua Tipe Data yang termasuk ke dalam Special Type. Keduanya mempunyai ciri
khas yang tidak dapat dimasukan kedalam Scalar ataupun Compound. Tipe Data
yang termasuk kedalam Tipe Special adalah:
2.5.3.3.1 Null
NULL adalah Tipe Data yang tidak memuat apapun. Setiap Variabel yang diset
menjadi Tipe Data NULL ini akan menjadikan Variabel tersebut kosong, seperti
dalam penggunaan fungsi unset(). Cara untuk menset Variabel menjadi NULL
adalah dengan memasukan nilai NULL pada variabel yang dimaksud seperti pada
contoh berikut:
2.5.3.3.2 Resource
Tipe Data Spesial yang satu ini di khususkan untuk menyimpan
resource, sumber atau alamat. Variabel tersebut hanya dapat diciptakan oleh suatu
fungsikhu sus yang mengembalikan nilai berupa resource seperti penggunaan
fungsi fopen, opendir, mysql_connect, mysql_query dan semacamnya.
2.6 Menghubungkan SQL Server dengan PHP
<?php # Nilai awal $foo adalan 10 $foo = 10; # $foo akan menjadi NULL $foo = NULL; # Sama dengan memanggil unset() unset($foo);
24
Untuk menghubungkan Sql Server dengan PHP caranya dengan menambahkan
modul DLL ke dalam PHP yang kita punya. Kita harus pastikan bahwa modul-modul
yang dibutuhkan sudah sesuai dengan versi PHP yang digunakan. Hal ini bisa dilihat
dari version PHP yang kita gunakan. Kita asumsikan server yang kita gunakan
menggunakan PHP versi 5.3, dengan menggunakan paket dari XAMMP versi 1.7.3
(saat ini XAMPP udah versi 1.7.7). Versi 1.7.3 ini sudah terdapat modul-modul
bawaan dari XAMPP sendiri untuk SQL Server. Jika menggunakan versi 1.7.7, akan
dijelaskan juga cara untuk membuat koneksi SQL Server untuk versi 1.7.7 (install
modul manual).
2.6.1 Konfigurasi pada XAMPP 1.7.3
Beruntunglah karena di versi ini modul mysql sudah disediakan oleh XAMPP.
Karena sudah tersedia, kita tinggal mengubah konfigurasinya yang ada di php.ini.
1. Sebelum konfigurasi di php.ini, pastikanlah bahwa file php_mssql.dll dan -
php_pdo_mssql.dll sudah ada dan tersimpan di dalam direktori: C:\xampp\
php\ext\.(Diasumsikan bahwa Xampp disimpan di dalam drive C:\). Untuk versi
1.7.3 ke bawah, kedua file tersebut pasti sudah ada.
2. Buka file php.ini pada folder C:\xampp\php\ dengan menggunakan notepad, dan
cari 2 text berikut ini dan hilangkan tanda semicolon (;) untuk mengaktifkan
konfigurasi extension (menambahkan extension untuk PHP).
;extension=php_mssql.dll menjadi extension=php_mssql.dll
;extension=php_pdo_mssql.dll menjadi extension=php_pdo_mssql.dll
3. Konfigurasi selesai. Restart ulang Apache Server anda
2.6.2 Konfigurasi pada XAMPP 1.7.4 ke Atas
25
Nah, untuk versi 1.7.4 ke atas, memang agak ribet, karena pada versi ini sendiri
XAMPP entah kenapa menghilangkan kedua file di atas, yaitu php_mssql.dll dan
php php_pdo_mssql.dll. Untuk menambahkannya, harus download filenya.
1. Karena pada versi ini file php_mssql.dll dan php_pdo_mssql.dll tidak ada, maka
kita harus mendownload file-filenya. File-filenya dapat didownload .
2. Kemudian simpan kedua file tersebut di C:\xampp\php\ext\, kemudian
rename php_mssql.ts.dll menjadi php_mssql.dll dan php_pdo_mssql.ts.dll menjad
php_pdo_mssql.dll.
3. Buka file php.ini pada folder C:\xampp\php\ dengan menggunakan notepad, dan
cari 2 text berikut ini dan hilangkan tanda semicolon (;) untuk mengaktifkan
konfigurasi extension (menambahkan extension untuk PHP).
;extension=php_mssql.dll menjadi extension=php_mssql.dll
;extension=php_pdo_mssql.dll menjadi extension=php_pdo_mssql.dll
4. Setelah itu, download file ntwdblib.dll
5. Simpan file ntwdblib.dll di C:\WINDOWS\system32 dan di C:\xampp
\apache\bin\.
6. Konfigurasi selesai. Restart ulang Apache Server kamu.
Tes Konesi dan Query dengan PHP
Konfigurasi sudah selesai, sekarang kita akan coba membuat sebuah file PHP
untuk mengkoneksikan dengan database MS SQL Server. Buatlah sebuah
file tes_koneksi.php dan simpan di sebuah folder apa saja di C:\xampp\htdocs\
tutorial\ .
Untuk mengetesnya, silakan copy paste kode berikut di file tersebut.
?
1 <?php
26
2
3
4
5
6
7
8
9
1
1
1
1
$server = 'CHEYUZ-PC\SQLEXPRESS';
$username = 'sa';
$password = 'h3ll0w0rlD';
$con = mssql_connect($server, $username, $password);
if ($con)
{
echo 'Berhasil konek!';
}
else
{
echo 'Koneksi GAGAL!';
}
Tutorial selesai, kamu dapat mengetesnya dengan menjalankan link berikut
ini: http://localhost/tutorial/tes_koneksi.php.