Senin, 03 Maret 2008

SQL SERVER

SQL SERVER

Microsoft SQL Server merupakan produk RDBMS (Relational Database Management System) yang dibuat oleh Microsoft. Orang sering menyebutnya dengan SQL Server saja. Ini kadang-kadang membingungkan bagi kalangan awam karena sebelumnya sudah ada pula terminologi SQL. Untuk lebih jauh mengenal apa itu SQL silakan Anda baca artikel pada alamat ini. Microsoft SQL Server juga mendukung SQL sebagai bahasa untuk memproses query ke dalam database dan kita tahu bahwa SQL ini sudah digunakan secara umum pada semua produk database server yang ada di pasaran saat ini. Microsoft SQL Server banyak digunakan pada dunia bisnis, pendidikan atau juga pemerintahan sebagai solusi database atau penyimpanan data. Berbagai macam skala bisnis mulai yang kecil sampai skala enterprise bisa menggunakan Microsoft SQL Server sebagai database servernya. Anda mungkin tahu bahwa ada banyak produk sejenis Microsoft SQL Server seperti Oracle Database, Interbase, MySQL, Firebird, Sybase, IBM DB2 dan lain sebagainya.
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.


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.
Data Warehousing and Business Intelligence (BI) Improvements
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.

Query Analyzer Improvements
  • Ada banyak peningkatan disini, misalnya hadirnya integrated debugger untuk mendebug stored procedure, object browser untuk melihat semua object dari database secara hirarki dan juga fasilitas object search untuk mencari suatu object dalam database.
DTS Enhancement
  • Fasilitas ini sekarang sudah mampu untuk memperhatikan primary key dan foreign key constraints. Ini berguna pada saat migrasi tabel dari RDBMS lain.
Transact-SQL Enhancements
  • Salah satu peningkatan disini adalah T-SQL sudah mendukung UDF (user-definable function). Ini memungkinkan Anda untuk menyimpan rutin-rutin ke dalam database engine.
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.

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

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.
Author : Eko Heri SusantO

  • 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 SQL-DMO untuk memecahkan problem tersebut. Dikarenakan aplikasi tersebut harus bisa online maka untuk prgrammingnya saya pilih ASP.


Apakah SQL-DMO itu?
  • SQL-DMO itu sendiri merupakan kepanjangan dari SQL-Distributed Management Objects. SQL-DMO adalah Application Programming Interface(API) yang berfungsi sebagai sarana komunikasi antara instances SQL server dengan program interface, bahkan enterprise manager itu sendiri menggunakan SQL-DMO untuk koneksi ke instance SQL server. Jadi jika kita menggunakan SQL-DMO maka kita bisa membuat aplikasi yang mempunyai performa sama dengan enterprise manager.
SQL-DMO diimplementasikan dalam sebuah file Dynamic Link Library (DLL), yang diberi nama file sqldmo.dll. File ini sudah menjadi satu package dengan installer SQL server, jadi jika anda menginstall SQL server maka secara otomatis SQL-DMO juga akan ikut ter-install pada komputer tersebut.
Develop Aplikasi SQL-DMO
Untuk mendevelop aplikasi SQL-DMO langkah pertama yang harus kita siapkan adalah memanggil instance SQL-DMO tersebut. Bagi anda yang sudah terbiasa menggunakan object, tentunya sudah tidak asing lagi dengan cara mendeklarasikan instance sebuah object. Berikut ini

contoh deklarasi instance SQL-DMO.
     
Dim mSqlServer
     Set mSqlServer = Server.CreateObject("SQLDM  
     O.SQLServer")

Setelah proses pendeklarasian tersebut selesai kita lakukan, maka langkah kedua adalah membuat code untuk login ke SQL Server. Contoh codenya bisa anda lihat seperti dibawah ini :

  
 Function Connect()
    
 If Session("ServerName") <> "" AND Session("UserName") <> "" Then GetSession
     If mServerName = "" AND mUserName = "" Then Response.Redirect "Login.asp"
        Set mSqlServer = Server.CreateObject("SQLDMO.SQLServer")
         mSqlServer.LoginSecure = False
     if mUserPswd <> "" Then
        mSqlServer.Connect mServerName, mUserName, mUserPswd
    else
          mSqlServer.Connect mServerName, mUserName
   end if
      If mSqlServer.Status = 1 then
          Connect = True
   Else
     Connect = False
     Set mSqlServer = Nothing
   End If

  End Function

Setelah aplikasi kita terkoneksi dengan SQL Server, maka kita bebas menggunakan object-object yang ada dalam SQL server. Berikut ini contoh untuk mengambil object database yang ada dalam SQL Server :

Property Get Database()
    
 If Connect Then
         Set Database = Server.CreateObject("SQLDMO.Database")
          mStatus = True
     Else
          mStatus = False
     End If

End Property

Untuk mengambil object yang lain syntxnya juga hampir sama dengan cara mengambil object database. Anda tinggal mengganti nama objectnya saja. Contoh jika anda ingin mengambil table nama anda cukup merubah statement createobject menjadi seperti ini Set Table = Server.CreateObject("SQLDMO.TABLE"). Dengan cara yang sama, anda bisa juga mengambil object-object yang lain seperti View, Stored Procedure, Trigger, User Defined Function dan lain sebagainya.
Selanjutnya setelah kita berhasil memanggil object-object di SQL server, tentunya kita harus bisa menampilkan isi dari object-object tersebut. Berikut ini contoh menampilkan daftar database yang ada di SQL sever:
  
 Dim Obj, SQLDB
   Set Obj = New DMO
    Set SQLDB = Obj.Database
    for each SQLDB in Obj.SQLServer.Databases
    If Not SQLDB.SystemObject Then
       Response.Write SQLDB.Name
   End if
Next


Runing Application
Dikarenakan aplikasi ini berbasis web, maka untuk menjalankan aplikasi ini kita harus men-setting IIS (Internet Information Service) jika anda menggunakan Win NT, XP, 2000 atau PWS (Personal Web Service) jika anda menggunakan windows 9x. Setelah proses settingnya selesai maka aplikasi ini bisa anda jalankan di browse anda. Jika anda sukses mencapai tahap ini, saya ucapkan selamat buat anda, karena anda sudah bisa mengkases SQL server anda dari mana saja selama server anda terkoneksi dengan internet






Tidak ada komentar: