Showing posts with label Database Programming. Show all posts
Showing posts with label Database Programming. Show all posts

Database Application Using SQL Statement in Visual Basic 6

Friday, May 9, 2008

Pada tutorial kali ini saya akan menjelaskan bagaimana cara memanipulasi data menggunakan SQL Statement di Visual Basic. Tujuan tutorial ini adalah agar pembaca bisa memahami bagaimana cara menggunakan SQL Statement untuk memanipulasi data di Visual Basic oleh karena itu tutorial ini dibuat se-jelas dan se-sederhana mungkin tetapi tidak mengesampingkan pemahaman pokok tentang operasi DML dengan SQL Statement.



  • Buat sebuah File Database menggunakan Microsoft Access, simpan di c:\Sample dengan nama DBSample.mdb

  • Buat sebuah table dengan nama Products dengan struktur sebagai berikut :


    • ProductID Text(20)

    • Description Text(50)

    • Price number(Double)


  • Masuk ke Visual Basic, buat sebuah project Standard.EXE simpan di c:\Sample dengan nama SQLDML.vbp

  • Tambahkan tiga buah Textbox : txtPid, txtDesc, dan txtPrice

  • Tambahkan tiga buah Label : lblPid, lblDesc, dan lblPrice

  • Tambahkan tiga buah Button : cmdSave, cmdUpdate, cmdDelete, cmdSearch

  • Tambahkan lagi empat buah button untuk navigasi record : cmdFirst, cmdPrev, cmdNext, cmdLast



  • Application Interface


    Koneksi dengan Database MS Access



  • Masuk code editor, deklarasikan dua buah variabel untuk koneksi Database dan Recordset



  • Dim AccessConn As New ADODB.Connection

    Dim rsProduct As New ADODB.Recordset


  • Dobel klik Form1, tambahkan kode program berikut :



  • Set AccessConn = New ADODB.Connection

    AccessConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

    "Data Source=" & App.Path & "\DBSample.mdb;Persist Security Info=False"


    'kode program App.Path akan menghasilkan path dari file .exe aplikasi ini

    'yaitu C:\Sample



    'buka koneksi

    AccessConn.Open



    SQLStr = "select * from products"



    Set rsProduct = New ADODB.Recordset

    rsProduct.Open SQLStr, AccessConn, adOpenDynamic, adLockOptimistic, adCmdText




    Menambah Data dengan SQL Insert Statement



  • Dobel klik button cmdSave, tambahkan kode program berikut :



  • Dim SQLStr As String

    'deklarasi variabel SQLStr

    'yang nantinya akan digunakan untuk perintah SQL



    SQLStr = "insert into products (productid,description,price) " & _

    "values('" & txtPid & "','" & txtDesc & "','" & txtPrice & "')"



    'Execute SQL Command

    AccessConn.Execute SQLStr, , cmdtypetext



    'tampilkan pesan

    MsgBox "Data telah tersimpan", vbInformation, "Informasi"


    'refresh dataset rsproduct agar record baru langsung terlihat

    rsProduct.Requery



    'clear textbox

    txtPid = ""

    txtDesc = ""

    txtPrice = ""

    txtPid.SetFocus



    Retrieving data in Visual Basic using SQL Select Statement

    Mencari Data dengan SQL Select Statement


    Karena SQL Select Statement menghasilkan/mengembalikan satu atau lebih record maka perlu dideklarasikan sebuah variabel recordset baru yaitu rsproductsCari untuk menampung recordset hasil query pencarian



  • Dobel klik button cmdSearch, tambahkan kode Program berikut :




  • Dim SQLStr As String

    Dim rsproductsCari As New ADODB.Recordset



    'mencari product berdasarkan productid

    SQLStr = "select * from products where productid = '" & txtPid & "'"



    Set rsproductsCari = New ADODB.Recordset

    rsproductsCari.Open SQLStr, AccessConn, adOpenDynamic, adLockOptimistic, adCmdText



    If Not rsproductsCari.BOF And Not rsproductsCari.EOF Then

    'jika data ada, tampilkan record pada textbox

         txtPid = rsproductsCari!productid

         txtDesc = rsproductsCari!Description

         txtPrice = rsproductsCari!price

    Else

    'jika tidak ada, tampilkan pesan

         MsgBox "Data tidak ditemukan", vbInformation, "Informasi"

         'clear textbox

         txtPid = ""

         txtDesc = ""

         txtPrice = ""

         txtPid.SetFocus

    End If


    Search Data in Visual Basic using SQL Select Statement


    Mengedit Data dengan SQL Update Statement


  • Dobel klik button cmdUpdate, tambahkan kode Program berikut :




  • Dim SQLStr As String



    SQLStr = "update products set description='" & txtDesc & "'," & _

    "price='" & txtPrice & "' where productid='" & txtPid & "'"



    Set rsProduct = AccessConn.Execute(SQLStr, , cmdtypetext)



    'refresh dataset rsproduct agar record baru langsung terlihat

    rsProduct.Requery



    'tampilkan pesan

    MsgBox "Perubahan telah tersimpan", vbInformation, "Informasi"



    'clear textbox

    txtPid = ""

    txtDesc = ""

    txtPrice = ""

    txtPid.SetFocus


    Update Data in Visual Basic using SQL Update Statement in Visual Basic

    Menghapus Data dengan SQL Delete Statement


  • Dobel klik button cmdDelete, tambahkan kode Program berikut :




  • Dim SQLStr As String

    Dim msgresult As Byte

    'deklarasi variabel msgresult

    'digunakan untuk menangkap result dari pesan konfirmasi delete



    msgresult = MsgBox("Hapus Data produk " & txtPid, vbYesNo + vbQuestion, "Confirm")



    If msgresult = vbYes Then

         SQLStr = "delete from products where productid='" & txtPid & "'"

         Set rsProduct = AccessConn.Execute(SQLStr, , cmdtypetext)

         'refresh dataset rsproduct agar record baru langsung terlihat

         rsProduct.Requery


         'clear textbox

         txtPid = ""

         txtDesc = ""

         txtPrice = ""

         txtPid.SetFocus

    End If


    Delete Data in Visual Basic using SQL Delete Statement


    Navigasi Record Dengan Kode Program


    Ini adalah kode Program untuk navigasi record ke posisi record pertama.


  • Dobel klik button cmdFirst, tambahkan kode Program berikut :



  • On Error Resume Next

    rsProduct.MoveFirst

         'menampilkan data

         txtPid = rsProduct!productid

         txtDesc = rsProduct!Description

         txtPrice = rsProduct!price





    Kode Program untuk navigasi record ke posisi record sebelumnya. jika record sudah di posisi record pertama, maka pointer tetap akan diarahkan ke record pertama. kamu bisa ganti kode Program rsproduct.MoveFirst dengan rsproduct.MoveLast agar navigasi kembali ke record terakhir setelah berada pada record pertama.


  • Dobel klik button cmdPrev, tambahkan kode Program berikut :



  • On Error Resume Next

    rsProduct.MovePrevious



    If rsProduct.BOF Then

         rsProduct.MoveFirst

    End If

         'menampilkan data

         txtPid = rsProduct!productid

         txtDesc = rsProduct!Description

         txtPrice = rsProduct!price



    Kode Program untuk navigasi record ke posisi record berikutnya. jika record sudah di posisi record terakhir, maka pointer tetap akan diarahkan ke record terakhir. kamu bisa ganti kode Program rsproduct.MoveLast dengan rsproduct.MoveFirst agar navigasi kembali ke record pertama setelah berada pada record terakhir.


  • Dobel klik button cmdNext, tambahkan kode Program berikut :



  • On Error Resume Next

    rsProduct.MoveNext



    If rsProduct.EOF Then

         rsProduct.MoveLast

    End If

         'menampilkan data

         txtPid = rsProduct!productid

         txtDesc = rsProduct!Description

         txtPrice = rsProduct!price



    Kode Program untuk navigasi record ke posisi record terakhir.



  • Dobel klik button cmdLast, tambahkan kode Program berikut :



  • On Error Resume Next

    rsProduct.MoveLast

         'menampilkan data

         txtPid = rsProduct!productid

         txtDesc = rsProduct!Description

         txtPrice = rsProduct!price



    Kamu bisa Download Source Code Aplikasi ini disini. Semoga bermanfaat

    Beberapa Cara Untuk Menghubungkan Visual Basic Dengan Database MS SQL Server

    Monday, May 5, 2008

    Ada beberapa metode untuk menghubungkan Visual Basic dengan Database MS SQL Server saya akan memberikan penjelasan 2 metode diantaranya yaitu koneksi dengan menggunakan komponen DataEnvironment dan koneksi dengan menggunakan kode Program. untuk tutorial ini saya menggunakan Visual Basic 6 dan MS SQL Server 2000.



    1. Koneksi menggunakan DataEnvironment




    1. Buat Project Standard EXE

    2. Klik menu Project | Add Data Environment, maka akan ditampilkan jendela Data Environment seperti ini :




    3. Data Environment

    4. Untuk membangun koneksi dengan Database SQL Server, Klik kanan objek Connection1 kemudian pilih Properties maka akan muncul jendela Data Link Properties.

    5. Pada jendela Data Link Properties pilih driver untuk koneksi ke MS SQL Server, yaitu Microsoft OLE DB Provider for SQL Server. kemudian klik Next

    6. Isi dengan nama server MS SQL Server kamu pada textbox "Select or enter a server name" (nama server adalah nama komputer kamu)

    7. Pilih radio button "use a specific username and password" pada bagian 2.Enter information to log on to the server.

    8. pada textbox username dan password isi dengan username dan password yang terdaftar di Database SQL Server kamu misalnya "sa" (user sa defaultnya tidak memiliki password). pada contoh ini saya menggunakan username 'yanadoe' dengan password 'bebas'.

    9. sebagai tambahan, user sa adalah user yang mempunyai kewenangan penuh terhadap system di MS SQL Server atau disebut system administrator. user ini dibuat secara otomatis oleh MS SQL Server ketika proses instalasi.

    10. setelah kamu lakukan langkah diatas, centang Checkbox "Allow saving password" agar kamu tidak perlu menginputkan lagi username dan password setiap kali aplikasi akan dijalankan.

    11. Pilih database Northwind pada textbox "Select the database on the server". klik tombol Test Connection untuk mengetahui apakah koneksi sudah berhasil atau tidak jika sukses klik tombol OK untuk menutup window dialog Data Link Properties


    Data Link Properties

    Setelah tahap diatas, koneksi dari Visual Basic ke Database MS SQL Server sudah terbentuk selanjutnya untuk mengambil data dari sebuah table di Database pertama kamu harus menambahkan sebuah Command pada DataEnvironment, Caranya sebagai berikut :



    Mengambil Data dari Database



    1. Klik kanan pada jendela DataEnvironment, pilih Add Command. maka akan dibuat sebuah object dengan nama Command1


    2. Klik kanan Command1, pilih Properties. setelah muncul jendela Command1 Properties, pilih Table pada bagian Database Object, dan pilih sebuah table pada bagian Object Name misalnya table Customers. kemudian klik OK


    Database Object

    Menampilkan Data dengan DataGrid



    1. Pertama kamu harus menambahkan komponen DataGrid pada ToolBox caranya : klik menu Project | Components, pada jendela Components pilih Microsoft DataGrid Control 6.0

    2. Setelah objek DataGrid ditambahkan pada Toolbox, klik komponen DataGrid tersebut kemudian Click and Drag pada Form1.

    3. Set Properties DataSource menjadi DataEnvironment1, dan Properties DataMember menjadi Command1

    4. Klik kanan pada DataGrid, pilih Retrieve Fields klik OK pada Message Dialog yang muncul

    5. Data pada table tidak akan langsung ditampilkan pada saat Design, untuk melihat datanya kamu harus Run Program dengan menekan F5.


    DataEnvironment Final


    2. Koneksi Menggunakan Kode Program



    Pada metode yang kedua ini kita tidak akan menggunakan Komponen Visual untuk mengakses Database SQL Server dari Visual Basic. kita akan menggunakan kode program untuk melakukannya. inilah langkah-langkahnya :



    1. Masuk ke Code Editor

    2. Deklarasikan variabel untuk koneksi ke Database SQL Server


    3. Public SQLServerConn As ADODB.Connection



    4. Karena koneksi ke Database harus sudah tersedia ketika aplikasi akan dijalankan, maka kita harus menambahkan kode Program pada event OnLoad Form1. Caranya dobel klik Form1, kemudian tambahkan kode Program dibawah ini :



      • Set variable SQLServerConn sebagai sebuah ADO Database Connection.

      • Set SQLServerConn = New ADODB.Connection



      • Set Parameter String Koneksi variable SQLServerConn agar terhubung dengan Database SQL Server




      • SQLServerConn.ConnectionString = "Provider=SQLOLEDB.1;" & _

        "Password=bebas;Persist Security Info=false;" & _

        "User ID=yanadoe;Initial Catalog=Northwind;Data Source=siberat"



      • Buka koneksi

      • SQLServerConn.Open





    Coba kamu Stop Service Database SQL Server menggunakan SQL Server Service Manager, dan Run Porgram, maka akan tampil Error message seperti ini :


    Connection Error Message

    Kita akan menambahkan kode program untuk memeriksa status Service Database SQL Server apakah berjalan atau tidak. jika tidak maka akan ditampilkan error message versi kita jika service Database SQL Server tidak berjalan. untuk melakukannya, gunakan kode program dibawah ini :


    On Error Resume Next



    'memeriksa status Database

    'pesan error yang akan muncul jika Database SQL Server

    'dalam keadaan mati (service dalam status stop)

    If Err.Number = -2147467259 Then

       MsgBox "Tidak dapat menghubungi Database SQL Server." & vbCrLf & _

       "Pastikan Service Database SQL Server sudah berjalan", vbCritical , "Koneksi Gagal"

       End     'Tutup Aplikasi

    End If


    SQL Server Database Connection Failed

    Tips : Kamu bisa gunakan komponen ADODC untuk mendapatkan parameter ConnectionString seperti diatas, caranya sebagai berikut:

    • tempatkan sebuah komponen ADODC pada form

    • Klik kanan, pilih ADODC Properties, Klik Build, akan muncul jendela Property Pages.

    • Lakukan langkah 4 s/d langkah 10 pada Koneksi menggunakan DataEnvironment diatas. setelah itu Copy string koneksi yang ada bagian "Use Connection String" jendela Property Pages. metode ini bisa juga digunakan untuk mendapatkan parameter ConnectionString untuk jenis Database yang lain




    Itulah Tutorial singkat Pemrograman Visual Basic untuk menghubungkan Visual Basic dengan Database SQL Server. Semoga bermanfaat.

    Membuat Aplikasi Grafik Penjualan dengan Delphi dan Database SQL Server - Part 1

    Sunday, April 6, 2008


    Tutorial Delphi ini berisi panduan untuk membuat aplikasi sederhana untuk menampilkan grafik penjualan sebuah produk per periode tertentu menggunakan Delphi. Tujuan tutorial Delphi ini adalah untuk memberikan panduan atau gambaran tentang bagaimana cara menggunakan komponen DBChart di Delphi. karena tulisan artikel ini cukup panjang dan mengandung banyak screenshoot, maka saya membaginya menjadi 3 bagian yaitu Persiapan, Koneksi DBChart ke Database SQL Server, dan Coding supaya tidak membingungkan dan loading halaman tidak terlalu lama.



    Aplikasi ini akan menampilkan grafik penjualan sebuah produk tertentu dan per periode tanggal tertentu berdasarkan inputan dari user yang berupa nama produk dan periode penjualan. Agar lebih mudah maka untuk tutorial Delphi kali ini saya menggunakan tiga buah table di MS SQL Server 2000 yaitu table Orders, Order Details, dan table Products. Untuk koneksi ke database SQL Server saya menggunakan koneksi dengan ADO (Active Data Object). semua operasi DML (Data Manipulation Language) menggunakan SQL Statement jadi diperlukan pengetahuan dasar tentang SQL Statement.



    Persiapan


    Inilah langkah-langkahnya :





    • Masuk ke Delphi, tambahkan sebuah komponen ADOConnection yang ada di tab ADO, agar lebih deskriptif ubah property Name ADOConnection1 menjadi SQLServerConn

    • Dobel klik SQLServerConn, pada dialog yang muncul klik tombol Build kemudian akan muncul window dialog Data Link Properties, pilih Microsoft OLE DB Provider for SQL Server, kemudian klik tombol Next

    • Isi dengan nama server MS SQL Server kamu pada textbox "Select or enter a server name" (nama server adalah nama komputer kamu)

    • pada textbox username dan password isi dengan username dan password yang terdaftar di Database SQL Server kamu, pada contoh ini saya menggunakan username 'yanadoe' dengan password 'bebas'. kemudian centang Checkbox "Allow saving password".

    • Pilih database Northwind pada textbox "Select the database on the server". klik tombol Test Connection untuk mengetahui apakah koneksi sudah berhasil atau tidak jika sukses klik tombol OK untuk menutup window dialog Data Link Properties


    Database Connection Setting


    • Ubah properties Login Prompt SQLServerConn menjadi False agar tidak ditampilkan login prompt ketika kita akan menjalankan aplikasi.

    • Tambahkan dua buah komponen ADODataset masing-masing beri nama ADSPenjualan dan ADSProduk. ADSProduk digunakan untuk mendapatkan semua nama produk dari table Products di database Northwind

    • Tambahkan sebuah komponen DBChart yang ada pada tab Data Controls, sebuah ComboBox, dua buah DateTimePicker (ada di tab Win32), sebuah Button beri nama BGenerate dan beberapa Label sehingga tampilannya seperti ini :


    Application Interface Design

    Part 2 - Koneksi DBChart ke Database SQL Server >>

    Membuat Aplikasi Grafik Penjualan dengan Delphi dan Database SQL Server - Part 2

    Setelah tahap persiapan sudah selesai, tahap selanjutnya adalah menghubungkan ADSPenjualan, ADSProduk ke Database SQL Server melalul komponen ADOConnection dan kemudian menghubungkan DBChart1 ke ADSPenjualan.



    • Ubah properties Connection ADSPenjualan dan ADSProduk menjadi SQLServerConn agar kedua komponen ini bisa terhubung dengan Database SQL Server. sebagai tambahan kamu juga bisa menggunakan properties Connection String masing-masing komponen ADSPenjualan dan ADSProduk untuk koneksi ke Database, tetapi untuk menghemat koneksi ke-server maka saya menggunakan sebuah komponen ADOConnection sehingga jika ada komponen DBAware yang lain yang akan menggunakan koneksi yang sama, cukup kita hubungkan dengan komponen ADOConnection ini.

    • masukan sql statement berikut pada properties CommandText ADSPenjualan :




    select b.orderdate,sum(a.quantity) jml

    from [order details] a, orders b, products c

    where a.orderid=b.orderid

    and a.productid=c.productid

    and c.productname=:pn

    and b.orderdate between :tglawal and :tglakhir

    group by b.orderdate

    order by b.orderdate



    pada sql statement diatas terdapat 3 parameter yaitu pn, tglawal, dan tglakhir ketiga parameter tesebut digunakan untuk menampung inputan dari user yaitu nama produk, tanggal awal dan tanggal akhir.




    • Dobel klik DBChart1, pada window dialog Editing DBChart1, tekan tombol Add kemudian pilih tipe chart yang kamu inginkan, disini saya menggunakan chart tipe Batang (Bar). kalau sudah, tekan tombol OK





    • Masih di window dialog Editing DBChart1, klik tab Series disebelah kanan tab Chart disana terdapat 4 tab lainnya, klik tab Data Souce, pada combobox dibawahnya pilih Dataset karena kita akan menampilkan Grafik berdasarkan nilai yang diterima dari sebuah Dataset.

    • Pilih ADSPenjualan pada combobox Dataset.

    • Pilih Orderdate pada combobox Labels dan pilih JML pada combobox Bar


    dataset


    • Masih di window dialog Editing DBChart1 | tab Series, klik tab Marks pada pilihan Style disebelah kanan pilih Value.

    • Supaya masing-masing grafik batang tidak terlalu berdekatan maka kita harus membatasi jumlah grafik batang perhalamannya dengan cara : klik Tab Chart, klik tab Paging, disana kamu bisa spesifikasikan jumlah batang per halamannya. Saya isi dengan angka 5. jika sudah klik tombol Close.

    • Untuk menampilkan deskipsi/judul tiap sumbu : masih pada tab Chart, klik tab Axis | tab Title, pada Textbox Title isi dengan Quantity. tadi adalah judul untuk sumbu Y, untuk memberikan judul pada sumbu X, klik tab Titles (disebelah kanan tab Axis), pada combobox pilih Foot, kemudian isikan judul untuk sumbu X pada textbox yang ada dibawahnya






    << Part 1 - Persiapan    Part 3 - Coding >>

    Membuat Aplikasi Grafik Penjualan dengan Delphi dan Database SQL Server - Part 3

    Coding


    Setelah Tahap persiapan dan menghubungkan DBChart ke komponen ADODataset dan Database SQL Server selesai, sekarang kita akan menuju tahap penulisan kode Program (Coding).



    Kita akan mengambil data nama produk dari table Products, kemudian akan kita masukkan ke komponen Combobox1 ketika aplikasi pertama kali dijalankan. Untuk itu kita perlu menambahkan beberapa baris perintah pada event OnCreate Form1. Caranya dobel klik Form1 kemudian tambahkan kode perintah berikut ini kedalam Code Editor :




    if not sqlserverconn.Connected then

    sqlserverconn.Open;

    ADSProduk.Close;

    ADSProduk.CommandText := 'select productname from products group by productname';

    ADSProduk.Open;



    while not ADSProduk.Eof do

    begin

    combobox1.Items.Add(ADSProduk.FieldValues['productname']);

    ADSProduk.Next;

    end;

    ADSProduk.Close;







    Proses Generate Grafik akan dihandle oleh button BGenerate, Dobel klik Button BGenerate kemudian tambahkan baris perintah berikut pada Code Editor :




    ADSpenjualan.Close;

    ADSPenjualan.Prepared := true;

    ADSPenjualan.Parameters[0].Value := Combobox1.Text;

    ADSPenjualan.Parameters[1].Value := DateTimePicker1.Date;

    ADSPenjualan.Parameters[2].Value := DateTimePicker2.Date;

    ADSPenjualan.Open;



    if ADSPenjualan.RecordCount < 1 then

    Showmessage('Data Tidak Ada');



    Untuk menampilkan judul dibagian atas grafik berdasarkan nama produk yang dipilih, tambahkan kode perintah berikut ini :


    dbchart1.Title.Text.Clear;

    dbchart1.Title.Text.Add('Grafik Penjualan: '+ combobox1.text);


    karena kita tadi membatasi jumlah grafik batang menjadi 5 buah perhalamannya, maka dibutuhkan sebuah kode program untuk menampilkan halaman berikutnya jika jumlah record lebih dari 5. caranya tambahkan dua buah Button masing-masing dengan Caption "<< Sebelumnya" dan "Selanjutnya >>", dobel klik Button dengan Caption ""<< Sebelumnya", kemudian tambahkan kode perintah berikut ini :



    dbchart1.PreviousPage;

    dan untuk Button "Selanjutnya >>", tambahkan kode perintah berikut ini :


    dbchart1.NextPage;

    untuk mengetahui halaman saat ini dan jumlah total halaman, pertama kamu tambahkan dulu sebuah label beri nama LHalaman, kemudian gunakan kode perintah berikut ini pada masing masing button BGenerate, Button "<< Sebelumnya", dan button "Selanjutnya >>" :




    lhalaman.Caption := 'Halaman : '+inttostr(dbchart1.Page)+'/'+inttostr(dbchart1.NumPages);


    Final Screenshot :





    Itulah tutorial Delphi tentang dasar cara penggunaan komponen DBChart di Delphi, kamu bisa menambahkan fitur yang lainnya sesuai kebutuhan kamu seperti untuk mencetak grafiknya, menambahkan jenis grafiknya, atau kamu bisa menambahkan grafik penjualan berdasarkan rupiahnya dan lain-lain. Semoga bermanfaat.

    MySQL - Langkah Pembuatan ODBC Data Source

    Monday, February 18, 2008

    Salah satu cara untuk mengakses database MySQL dari program aplikasi seperti Delphi atau Visual Basic adalah melalui ODBC (Open Database Connectivity). Meskipun banyak software yang berbentuk ActiveX Control dan VCL Component yang tersebar di internet untuk mengakses database MySQL dari Delphi atau Visual Basic, tetapi kebanyak komponen ini tidak gratis dan mahal.



    Untungnya MySQL menyediakan sebuah software driver ODBC untuk menjembatani koneksi antara software aplikasi dengan database MySQL.Software ini adalah khusus untuk driver ODBC untuk MySQL. Berikut ini adalah langkah pembuatan data source ODBC untuk MySQL dengan menggunakan MySQL ODBC/Connector.





    • Download MySQL Connector/ODBC di http://dev.mysql.com/downloads/connector/odbc/ jika belum punya.

    • Install MySQL Connector/ODBC.

    • Setelah selesai menginstall MySQL Connector/ODBC, kemudian masuk ke Control Panel. Start | Settings | Control Panel | Administrative Tools | dobel klik Data Sources (ODBC).

    • Setelah muncul window ODBC Data Source Administrator klik tab User DSN, kemudian klik tombol Add.

    • di window Create New Data Source pilih MySQL ODBC nomor_versi Driver (nomor_versi adalah versi dari Driver Connector MySQL misalnya 3.51). Klik tombol Finish

    • Kemudian akan muncul window Connector / ODBC. Klik pada tab Login.

    • Pada text box Data Source Name isi dengan nama Data Source, misalnya MySQLDS.

    • Pada text box description isi dengan deskripsi koneksi (optional).

    • Pada text box server isi dengan localhost atau IP 127.0.0.1 jika anda menginstall Database MySQL di komputer anda sendiri.

    • Pada text box User isi dengan nama user misalnya root (root adalah user yang mempunyai kewenangan penuh terhadap database atau disebut juga Administrator).

    • Pada Text box Password isi dengan password root (defaultnya user root tidak mempunyai password).

    • klik tombol Test untuk mengetes koneksi.

    • Jika sudah sukses klik tombol Finish.

    Menghubungkan Delphi dengan Database MySQL

    Friday, February 15, 2008

    Berikut ini beberapa metode untuk menghubungkan Delphi dengan database MySQL berikut penjelasannya :




    Koneksi menggunakan MySQL Connector/ODBC



    • Download MySQL Connector/ODBC di http://dev.mysql.com/downloads/connector/odbc/ jika belum punya.

    • Install MySQL Connector/ODBC.

    • Setelah selesai menginstall MySQL Connector/ODBC, kemudian masuk ke Control Panel. Start | Settings | Control Panel | Administrative Tools | dobel klik Data Sources (ODBC).

    • Setelah muncul window ODBC Data Source Administrator klik tab User DSN, kemudian klik tombol Add.

    • di window Create New Data Source pilih MySQL ODBC nomor_versi Driver (nomor_versi adalah versi dari Driver Connector MySQL misalnya 3.51). Klik tombol Finish

    • Kemudian akan muncul window Connector / ODBC. Klik pada tab Login.

    • Pada text box Data Source Name isi dengan nama Data Source, misalnya MySQLDS.

    • Pada text box description isi dengan deskripsi koneksi (optional).

    • Pada text box server isi dengan localhost atau IP 127.0.0.1 jika anda menginstall Database MySQL di komputer anda sendiri.

    • Pada text box User isi dengan nama user misalnya root (root adalah user yang mempunyai kewenangan penuh terhadap database atau disebut juga Administrator).

    • Pada Text box Password isi dengan password root (defaultnya user root tidak mempunyai password).

    • klik tombol Test untuk mengetes koneksi.

    • Jika sudah sukses klik tombol Finish.

    • Masuk ke Delphi, buat sebuah project baru lalu tambahkan sebuah komponen ADOConnection.

    • Dobel klik komponen ADOConnection. Klik tombol Build.

    • di window Data Link Properties klik tab Provider kemudian pilih Microsoft OLE DB Provider for ODBC Drivers klik tombol Next

    • Pada Tab Connection, Pilih radio button use data source name kemudian pada combobox di bawahnya pilih nama data source yang tadi anda buat yaitu MySQLDS.

    • Isi root pada textbox User name dan passwordnya pada textbox Password. Klik tombol Test Connection. Jika sukses, klik tombol OK.

    • Set Property LoginPrompt menjadi false agar aplikasi tidak menampilkan form Database Login ketika anda akan menjalankan aplikasi.

    • Set Property Connected menjadi true.



    Setelah tahap diatas, koneksi ke database MySQL sudah terbentuk. Selanjutnya untuk mengakses data pada sebuah table di database MySQL anda bisa menggunakan komponen ADOTable atau ADOQuery yang dihubungkan dengan komponen ADOConnection dengan cara men-set property Connectionnya menjadi ADOConnection1.





    Koneksi menggunakan MySQLDAC



    • Download MicroOlap MySQL Direct Access Component versi trial di http://www.microolap.com/products/connectivity/mysqldac/download/.

    • Install MicroOlap MySQL Direct Access Component seperti biasa.

    • Setelah selesai installasi, di tab component delphi akan muncul tab baru yaitu DAC for MySQL

    • Buat Project baru di Delphi, klik pada tab DAC for MySQL kemudian tambahkan sebuah komponen mySQLDatabase.

    • Dobel klik komponen tersebut, setelah itu muncul window dialog TMySQLDatabase Editor.

    • Isi text box Database Name dengan nama database anda.

    • Isi text box User ID dengan username anda misalnya root.

    • Isi text box Password password user yang digunakan.

    • Isi text box Host Name / IP dengan localhost atau 127.0.0.1 jika anda menginstall database MySQL di komputer anda sendiri.

    • Isi text box Server Port dengan nomor port yang digunakan MySQL database (defaultnya 3306).



    Dari dua metode diatas, koneksi dengan menggunakan MySQL Direct Access Component adalah yang paling baik karena memberikan peforma akses/query ke database yang lebih cepat dibandingkan koneksi dengan menggunakan MySQL Connector/ODBC hanya saja komponen ini tidak gratis

    Membuat Validasi Login User Berbasis Database di Borland Delphi

    Saturday, February 9, 2008

    Jika Anda membuat aplikasi untuk beberapa user group atau user level. Misalnya aplikasi anda digunakan untuk mengolah data penjualan suatu barang dan di aplikasi anda tersebut misalnya terdapat beberapa modul/menu diantaranya input data barang, input data penjualan, input data pembelian, laporan barang masuk, laporan barang keluar, laporan rugi laba, administrasi user dan lain sebagainya.




    Nah tidak semua orang/user tentunya mempunyai hak untuk mengakses semua modul/menu tersebut. Misalnya ada dua level user yaitu Administrator dan operator. Operator hanya bertugas untuk menginput data barang, input data pembelian, input data penjualan, laporan barang masuk dan laporan barang keluar. Untuk Laporan Keuangan Rugi Laba dan administrasi user hanya boleh diakses oleh Administrator yang mempunyai kewenangan penuh terhadap seluruh aplikasi. Untuk itu tentunya aplikasi anda membutuhkan sebuah validasi user yaitu lewat sebuah proses login.



    berikut ini saya akan memberikan sebuah contoh pembuatan aplikasi untuk validasi login user berbasis databases di borland delphi. Disini saya menggunakan borland delphi versi 7.



    Sebelum mulai dengan Delphi anda harus membuat dahulu sebuah database misalnya kita gunakan database Microsoft Access.


    • Masuk ke Microsoft Access buat database baru : File | New | Blank Database. Simpan di folder C:\APP\Login dengan nama DelphiTutorial.mdb.

    • Buat table baru : Insert | Table. Pada kotak dialog yang muncul pilih Design View klik ok.




    Buat struktur tabel seperti dibawah ini :























    Filed Name Data Type Size
    Username Text 30
    Password Text 50
    Status Text 1


    Field Status digunakan untuk pengenalan level user (0 untuk operator dan 1 untuk administrator). Berikan primary key pada field Username dan simpan table dengan nama Login. Kemudian isikan beberapa data, contoh :



















    Username Password Status
    yana belajar 0
    yanadoe delphi tutor 1





    • Buat sebuah project baru di Delphi : File | New | Aplication

    • Tambahkan dua buah komponen Edit dan dua buah komponen Button dan dua buah komponen Label

    • Tambahkan sebuah form lagi : File | New | Form.



    Set property tiap komponen sebagai berikut :










































































    Nama Komponen Nama Property Nilai
    - Form1 Name FLogin
    - Form2 Name FMenu
    - Label1 Name Label1
    Caption Username
    - Label2 Name Label2
    Caption Password
    - Edit1 Name EUsername
    - Edit2 Name EPassword
    PasswordChar *
    - Button1 Name BtnOk
    Caption Login
    - Button2 Name BtnCancel
    Caption Batal


    Sehingga tampilannya seperti ini





    • Simpan project di C:\APP\Login dengan nama PLogin.dpr.
    • Klik Flogin, tambahkan sebuah komponen AdoQuery (ada di tab ADO)

    • Set Property Namenya : AQLogin

    • Set Property ConnectionString : Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DelphiTutorial.mdb;Persist Security Info=False

    • klik form Fmenu kemudian tambahkan komponen MainMenu.

    • Dobel klik komponen MainMenu dan tambahkan satu menu dan beberapa submenu sehingga tampilannya seperti dibawah ini :






    • dobel klik komponen BtnOk di form FLogin kemudian isikan kode berikut :





    aqlogin.Close;
    aqlogin.SQL.Text := 'select * from login where username = :un and password = :pw';
    aqlogin.Prepared := true;
    aqlogin.Parameters[0].Value := EUsername.Text;
    aqlogin.Parameters[1].Value := EPassword.Text;
    aqlogin.Open;

    if aqlogin.RecordCount < 1 then // jika data tidak ada, tampilkan pesan error
    Messagedlg('Username tidak dikenal',mterror,[mbok],0)
    else if aqlogin.RecordCount > 0 then // jika data ada, cek status
    begin
    if aqlogin.FieldValues['status'] = '0' then // jika status 0, maka menu administrator disembunyikan
    begin
    fMenu.caption := 'Anda login sebagai Operator';
    fmenu.Administrator1.visible := false;
    end
    else if aqlogin.FieldValues['status'] = '1' then
    fMenu.caption := 'Anda login sebagai Administrator'
    else
    begin
    Messagedlg('User level tidak jelas, login gagal',mterror,[mbok],0);
    exit;
    end;
    end;

    flogin.Hide;
    fMenu.show;



  • Dobel klik komponen BtnCancel, kemudian tambahkan kode berikut :



  • application.Terminate;



    Kode pada BtnOk akan memeriksa username dan password dengan data yang ada di tabel login. Jika data ada (login sukses) maka akan ditampilkan form FMenu. Main Form untuk project ini adalah Flogin jadi meskipun anda sudah menutup form FMenu dan seolah-olah aplikasi sudah tertutup, padahal sebenarnya aplikasi tersebut masih berjalan dikarenakan Flogin yang jadi Main Form belum tertutup. Untuk membuktikannya, klik kanan di taskbar dan pilih Task Manager. Klik pada tab Proses kemudian cari entry dengan nama Plogin.exe.



    Untuk mengatasi masalah tersebut, klik di FMenu kemudian pada Object Inspector klik tab Events kemudian dobel klik pada event OnClose, lalu tambahkan kode berikut :




    application.Terminate;



    Dengan demikian aplikasi akan di terminate ketika anda menutup form Fmenu

    .

    Membuat Validasi Login User Berbasis Database dengan Borland Delphi

    Jika Anda membuat aplikasi untuk beberapa user group atau user level. Misalnya aplikasi anda digunakan untuk mengolah data penjualan suatu barang dan di aplikasi anda tersebut misalnya terdapat beberapa modul/menu diantaranya input data barang, input data penjualan, input data pembelian, laporan barang masuk, laporan barang keluar, laporan rugi laba, administrasi user dan lain sebagainya.




    Nah tidak semua orang/user tentunya mempunyai hak untuk mengakses semua modul/menu tersebut. Misalnya ada dua level user yaitu Administrator dan operator. Operator hanya bertugas untuk menginput data barang, input data pembelian, input data penjualan, laporan barang masuk dan laporan barang keluar. Untuk Laporan Keuangan Rugi Laba dan administrasi user hanya boleh diakses oleh Administrator yang mempunyai kewenangan penuh terhadap seluruh aplikasi. Untuk itu tentunya aplikasi anda membutuhkan sebuah validasi user yaitu lewat sebuah proses login.



    berikut ini saya akan memberikan sebuah contoh pembuatan aplikasi untuk validasi login user berbasis databases di borland delphi. Disini saya menggunakan borland delphi versi 7.



    Sebelum mulai dengan Delphi anda harus membuat dahulu sebuah database misalnya kita gunakan database Microsoft Access.




    • Masuk ke Microsoft Access buat database baru : File | New | Blank Database. Simpan di folder C:\APP\Login dengan nama DelphiTutorial.mdb.

    • Buat table baru : Insert | Table. Pada kotak dialog yang muncul pilih Design View klik ok.




    Buat struktur tabel seperti dibawah ini :























    Filed Name Data Type Size
    Username Text 30
    Password Text 50
    Status Text 1


    Field Status digunakan untuk pengenalan level user (0 untuk operator dan 1 untuk administrator). Berikan primary key pada field Username dan simpan table dengan nama Login. Kemudian isikan beberapa data, contoh :



















    Username Password Status
    yana belajar 0
    yanadoe delphi tutor 1





    • Buat sebuah project baru di Delphi : File | New | Aplication

    • Tambahkan dua buah komponen Edit dan dua buah komponen Button dan dua buah komponen Label

    • Tambahkan sebuah form lagi : File | New | Form.



    Set property tiap komponen sebagai berikut :










































































    Nama Komponen Nama Property Nilai
    - Form1 Name FLogin
    - Form2 Name FMenu
    - Label1 Name Label1
      Caption Username
    - Label2 Name Label2
      Caption Password
    - Edit1 Name EUsername
    - Edit2 Name EPassword
      PasswordChar *
    - Button1 Name BtnOk
      Caption Login
    - Button2 Name BtnCancel
      Caption Batal



    Sehingga tampilannya seperti ini :





    • Simpan project di C:\APP\Login dengan nama PLogin.dpr.
    • Klik Flogin, tambahkan sebuah komponen AdoQuery (ada di tab ADO)

    • Set Property Namenya : AQLogin

    • Set Property ConnectionString : Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DelphiTutorial.mdb;Persist Security Info=False

    • klik form Fmenu kemudian tambahkan komponen MainMenu.

    • Dobel klik komponen MainMenu dan tambahkan satu menu dan beberapa submenu sehingga tampilannya seperti dibawah ini :






    • dobel klik komponen BtnOk di form FLogin kemudian isikan kode berikut :





    aqlogin.Close;

    aqlogin.SQL.Text := 'select * from login where username = :un and password = :pw';

    aqlogin.Prepared := true;

    aqlogin.Parameters[0].Value := EUsername.Text;

    aqlogin.Parameters[1].Value := EPassword.Text;

    aqlogin.Open;


    if aqlogin.RecordCount < 1 then // jika data tidak ada, tampilkan pesan error

    begin

    Messagedlg('Username tidak dikenal',mterror,[mbok],0);

    Exit;

    end

    else if aqlogin.RecordCount > 0 then // jika data ada, cek status

    begin

    if aqlogin.FieldValues['status'] = '0' then // jika status 0, maka menu administrator disembunyikan

    begin

    fMenu.caption := 'Contoh Database Login ...on ['+

    uppercase(aqlogin.FieldValues['username'])+'] as Operator';

    fmenu.Administrator1.visible := false;

    end

    else if aqlogin.FieldValues['status'] = '1' then

    fMenu.caption := 'Contoh Database Login ...on ['+

    uppercase(aqlogin.FieldValues['username'])+'] as Administrator';

    else

    begin

    Messagedlg('User level tidak jelas, login gagal',mterror,[mbok],0);

    exit;

    end;

    end;

    flogin.Hide;

    fMenu.show;





    • Dobel klik komponen BtnCancel, kemudian tambahkan kode berikut :




    application.Terminate;



    Kode pada BtnOk akan memeriksa username dan password dengan data yang ada di tabel login. Jika data ada aplikasi kemudian akan memeriksa status user. Jika status user tersebut "0" maka yang menu yang ditampilkan di form FMenu hanya menu untuk operator saja dan apabila status user "1" maka semua menu di form FMenu akan ditampilkan.



    Main Form untuk project ini adalah Flogin jadi jika anda menutup form FMenu, maka seolah-olah aplikasi sudah tertutup, padahal sebenarnya aplikasi tersebut masih berjalan di background, karena Flogin yang jadi Main Form belum tertutup. Untuk membuktikannya, klik kanan di taskbar dan pilih Task Manager. Klik pada tab Proses kemudian cari entry dengan nama Plogin.exe.



    Untuk mengatasi masalah tersebut, klik di FMenu kemudian pada Object Inspector klik tab Events kemudian dobel klik pada event OnClose, lalu tambahkan kode berikut :




    application.Terminate;



    Dengan demikian aplikasi akan di terminate ketika anda menutup form Fmenu

    .

    SQL Dinamis Dengan Parameter Di Microsoft Access

    Thursday, February 7, 2008


    Jika anda sering menggunakan SQL di Microsoft Access anda mungkin pernah merasa malas, capek (dsb..)
    untuk masuk ke menu Query Design untuk merubah statement SQL objek Query anda.




    Misalkan anda ingin menampilkan data barang-barang dari vendor tertentu di tabel Barang
    berdasarkan kode vendor yang anda cantumkan setelah klausa where di dalam
    statement SQL anda. Misalnya statement SQL anda seperti ini :





    Select * from barang where vendor_id='V0001'




    Anda bisa menampilkan data barang-barang dari vendor yang lain tanpa harus melakukan modifikasi
    SQL dengan cara menggunakan parameter sebagai inputan untuk kondisi pencarian setelah klausa where.
    Di bawah ini adalah contoh statement SQL dengan satu parameter yang diberi nama vid.





    Select * from barang where vendor_id=:vid



    Ketika Query tersebut dijalankan Microsoft Acess akan menampilkan kotak dialog Parameter, anda hanya
    perlu menginputkan kode vendor pada kotak dialog tersebut.



    ParameterDiaolog.jpg

    Recent Comments

    Tags Cloud

    Blogumulus by Roy Tanck and Amanda Fazani