Delphi Programming: Restricting User's Input Characters

Friday, May 30, 2008

For Client-Server Application or Application that Access sensitive Data it is commonly use an Authentication through a login form. you can enhance the security by restricting user to input certain characters in the login form. for example you can restrict user to input only Alphanumeric characters (A-Z,a-z,0-9) for both Username and Password Text. The advantage of this method is to minimize security hole that your application has or minimize the risk of SQL Injection. But the consequences of this method is all registered User must have their Username and Password in Alphanumeric value.



In this Tutorial i will share Delphi Script to restrict certain input characters in a Edit textbox. you must add this code on OnKeyPress Event of an Edit Component. for this tutorial you can add a TEdit(Edit1) and a label (label1).




Code for Restricting character other than Alphanumeric (A-Z,a-z,0-9) :





procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

var

  SelSt: Integer;

  TmpStr: string;



begin

if not (key in ['a'..'z','A'..'Z','0'..'9',Chr(vk_Back)]) then

  with (Sender as TEdit) do

  begin

    SelSt := SelStart;

    if (Key = Chr(vk_Back)) and (SelLength <> 0) then

    begin

      TmpStr := Copy(Text,1,SelStart)+Copy(Text,SelLength+SelStart+1,255);

      label1.Caption := 'You try to Input : '+tmpstr;

      end

    else if Key = Chr(vk_Back) then

    begin

      TmpStr := Copy(Text,1,SelStart-1)+Copy(Text,SelStart+1,255);

      label1.Caption := 'You try to Input : '+tmpstr;

    end

    else

    begin

      TmpStr := Copy(Text,1,SelStart)+Key+Copy(Text,SelLength+SelStart+1,255);

      label1.Caption := 'You try to Input : '+tmpstr;

    end;



    if TmpStr = '' then Exit;



    if (Key = Chr(vk_Back)) and (SelSt > 0) then Dec(SelSt)

    else if Key <> Chr(vk_Back) then Inc(SelSt);

    Key := #0;

    if SelSt = 0 then

    begin

      Text:= '';

      Exit;

    end;

  end;

end;



Designtime




Runtime


Enterprise Free, OpenSource Database Servers,Database Engines and Database Software

Monday, May 26, 2008

This list of Free Database Server,Database Engines and Database Software you can use it for free or free for non commercial use.



Ingres


Ingres is a proven, high-performance open source relational database solution that offers the scalability, integration and flexibility to leverage information resources across a wide range of platforms, including Linux, UNIX, Windows and OpenVMS.



ScimoreDB


ScimoreDB Distributed SQL database is free shared-nothing clustered database system . The Database server have been designed to take advantage of parallelization over multiple servers, achieving a near linear scalability for OLTP applications. Supporting up to 512 PC's in a single database cluster, ScimoreDB offers value in terms of speed, functionality and cost.TScimoreDB Server is an extremely reliable Enterprise Database. With features such as ACID with full commit, rollback, crash recovery and row level locking, it allows you to build secure, bussiness-critical application. Support T-SQL language enable you to create your own custom and potentially intricate bussiness logic.



Perst


Perst is an object-oriented embedded database for applications that need to deal with persistent data. There are two implementations of Perst - pure Java and pure C# (C Sharp).




H2


H2 is a SQL database engine. Available as Java library and as native executable (using GCJ). Clustering, embedded and server mode, disk based or in-memory operation. JDBC and (partially) ODBC APIs are supported. Support for transactions, referential integrity, triggers, subqueries, views, and encryption. A browser based console application is included. H2 stands for 'Hypersonic 2' and is written by original author of Hypersonic SQL.



HSQLDB


HSQLDB is the leading SQL relational database engine written in Java. It has a JDBC driver and supports a rich subset of ANSI-92 SQL (BNF tree format) plus SQL 99 and 2003 enhancements. It offers a small, fast database engine which offers both in-memory and disk-based tables and supports embedded and server modes. Additionally, it includes tools such as a minimal web server, in-memory query and management tools and a number of demonstration examples.



Microsoft SQL Server 2005 Express Edition



SQL Server Express is a version of SQL Server 2005 designed to helps developers build robust and reliable applications by providing a powerful database that is also free and easy to use.



db4o


db4o (database for objects) is the open source object database for Java and .NET. It is free software available under the GPL and also under a commercial license. It can persist any native object with a single line of code and allows you to experience true object-orientation. Features include: ACID transactions, query-by-example, S.O.D.A. query API and automatic class schema recognition, small footprint.



Sybase ASE Express Edition for Linux


ASE Express Edition is limited to use of one CPU, 5GB of data storage and 2GB of RAM.




IBM Cloudscape V10.0


IBM Cloudscape V10.0 is a pure, open source-based Java relational database management system that can be embedded in Java programs and used for online transaction processing (OLTP).



SQLite


SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine



SimpleSQL



SimpleSQL is designed to be a simple to use relational database, for Java, C++, JDBC, PHP, ActiveX, etc.



AidAim SQLMemTabl


SQLMemTable is a fast in-memory database system. Key features: no BDE, no dlls required, SQL support, BLOB compression, fast indexes, import/export, Unicode, comprehensive help. SQLMemTable Personal is free for personal use. Any company must order SQLMemTable Com, Pro, Team4, Team8 or Enterprise to use it in its projects



Berkeley DB


Berkeley DB is an open-source database system made by Sleepycat Software. It is available in several different distributions including a java beta version. You can use them freely if the the complete source code for your application is available and freely redistributable under reasonable conditions. Otherwise you can purchase a license. See the website for licensing information.




Firebird


Firebird is an OpenSource database environment formerly known as Borland Interbase Version 6. Features include full SQL compliancy, stored procedures, and other advance database features.



ObjectDB for Java/JDO


ObjectDB for Java/JDO is a powerful Object Database for Java. It is specially designed to handle efficiently databases of various sizes, from a few KBs to hundreds of GBs, in both embedded database mode and client server mode. As a pure Java Database, ObjectDB for Java/JDO is written entirely in Java, and it is compliant with the new Java Data Objects (JDO) standard.



MySQL database server and standard clients



MySQL is available for many platforms and you can download the server and client software as well as a MySQL ODBC diver and a bunch of other MySQL tools from this page.



postgresql


PostgreSQL is an open source relational database management system and runs on many platforms. You can download the latest release as well as a conversion utility (MySQL to PostgreSQL) from this page.



Hypersonic SQL


hsqldb is a relational database engine written in Java, with a JDBC driver, supporting a rich subset of ANSI-92 SQL (BNF tree format). It offers a small (less than 160k), fast database engine which offers both in memory and disk based tables. Embedded and server modes are available. Additionally, it includes tools such as a minimal web server, in-memory query and management tools (can be run as applets) and a number of demonstration examples. (100% Java Database)




GNU SQL Server


SQL Server is a free portable multiuser relatational database management system. It supports the full SQL89 dialect and has some extensions from SQL92. It provides multiuser access and transaction isolation based on predicative locks. The working OS: UNIX. The working language: C . It also uses RPC, shared memory and message queues.



Mariposa


The Mariposa distributed database management system is an ongoing research project at the University of California at Berkeley. It allows DBMSs which are far apart and under different administrative domains to work together to process queries. Runs on Digital Equipment Alpha running DEC OSF/1 3.2 (with gcc and cc).



Dxstore Database System



The Dxstore Database System is a database management system for Linux, FreeBSD, and other operating systems. In the tradition of dbm/ndbm, it is distributed as an embeddable C or C++ library and shares with them the model of a database as a collection of key/value pairs



DiamondBase


DiamondBase is a C++ database engine which is available for free non commercial use, and is negotiable for commercial use.

InstallCreator 2.0 Free Application Installer

Saturday, May 24, 2008

InstallCreatorInstallCreator Freeware Version is a Software for Creating Application Installer Package

This Freeware Version of InstallCreator contain full feature with some Advertisement Page for ClickTeam on each Installer when the installation is complete, with a button to connect to ClickTeam web site. There are absolutely no limitations in the functionality, and none of those annoying "nag screens" in the software.


Install Creator And Install Creator Pro Feature List



  • Everything in one compressed distributable executable file

  • Follows the standards seen in all installation programs

  • Full-featured dialog box editor to customize your installer's screen

  • Every text is customizable

  • Creates icons and folder in Window's start menu

  • Automatic floppy disk spanning

  • Automatic installation of Fonts

  • Automatic installation of ActiveX controls

  • Automatic installation of screen-savers

  • Handle DLL installation and de-installation counters

  • Optional icon on the desktop

  • Display a text or web page at the end of an installation

  • Launch other programs at the end of an installation

  • Complete de-installer

  • Ability to remove keys from the registry

  • Multilingual templates and you can make your own language translations






  • For Install Creator and Install Creator Pro

  • Windows 95 OSR-2 / 98 / Me / NT 4 / 2000 / XP / Vista or above, with Internet Explorer 4 or above installed

  • 32 Mb RAM

  • hard disk with 4 Mb of free disk space



For the install programs created with Install Creator or Install Creator Pro


  • Windows 95 / 98 / Me / NT 4 / 2000 / XP / Vista or above

  • 16 Mb RAM




What makes this Software Different from other Installers Software




  • Small footprint of the executable

    An empty installer is only 100Kb. We cram the complete professional installation program and the complete de-installer in 100kb! Compare that with other installer programs: minimums of 500Kb. We feel it is inexcusable to have a 500Kb installer!

  • A simple and easily understood interface

    There's no complex scripting language, you simply select a directory that contains the files to install and set options for any special individual files and that's it, you're done.

  • Easy step by step wizard - it's a cinch!

    When the project is done, just save the settings and you can recover the project later and update it at your will.

  • Complete customization

    You can change all the texts, choose any bitmaps, customize each screen of your installer - you can preview the look of the install process at anytime during the creation process.

  • Fully functional freeware version

    The freeware version is fully and completely operational. You will not find a better installer at 10 times the price. You have nothing to lose test it out today. All these features sound obvious and standard - don't they? So why do we still find programs on the Internet that decompress the data files onto the desktop (isn't that annoying?). Then there are the programs without proper de-installation routines, and products that create a directory at the root of your C drive instead of directing the files where you want them.



Publisher : www.clickteam.com

Download Link : Download (2.35 MB)

SXSkinComponents Free for Delphi Freeware Project



SXSkinComponents is a set of visual components. but it's not a usual package of controls. Using this Component Using SXSkinComponents you can easily create An interface with buttons, checkboxes, edits and other controls, design of which is changed like Windows XP Themes and A fully graphical interface with custom images instead of buttons and other controls.



Features:



  • 100% alpha channel support in components drawing.

  • Every skin is describen in a separate skin.ini file.

  • A skin file contains a set of skin styles: genearal and special ones.

  • A general skin style is a set of elements (images or geometrical figures).

  • JPEG, PNG-8 and PNG-24 (with 8-bit transparency) graphic file formats are supported.

  • These figures can be drawn as skin style elements: rectangles, rounded rectangles, circles, polygons and lines.

  • All figures can be drawn with a translucent border and a gradient fill.

  • Using a BoxTile element you can freely design buttons and other controls.

  • Optimized for processors with MMX instructions support.

  • Support Delphi 6, Delphi 7, Delphi 2005, Delphi 2006, C++Builder 6 and C++Builder 2006.

  • Designed for operating systems Windows 98/ME/NT/2000/XP/2003.

  • Full source code is 100% open.



Project License

  • SXSkinComponents source code can be freely distributed by anyone but with no modifications made.

  • Freeware Projects. You can freely use SXSkinComponents in your freeware projects (and not only opensource).

  • Shareware and Commercial Projects. To use SXSkinComponents in your shareware and commercial projects you have to purchase one of these licenses: a Project License or a Company License.

  • Skins (skin.ini files and image files) are totally free and can not be sold by their authors.



Installation Instruction:



  • Download SXSkinComponents distrubution package (choose Full or Source Only). Follow the DOWNLOADS page to do this.

  • Extract contents of the downloaded zip-file to the Delphi (C++Builder) installation folder.

  • Start Delphi (C++Builder) application. Install Delphi (C++Builder) package from Graphics32-1-8-SX2\Packages folder (it is named GR32_DSGN_BDSxxxx, GR32_DSGN_Dx or GR32_DSGN_CBx).

  • Install package from SXSkinComponents\Packages folder (it is named SXSkin_BDSxxxx_D, SXSkin_Dx_D or SXSkin_CBx_D).

  • Ensure that Graphics32-1-8-SX2 and SXSkinComponents folders were added to the Delphi (C++Builder) Library path.



How to Start

To start with SXSkinComponents try to create a simple skinnable application. To do this start Delphi (C++Builder) and open a project from the Template directory of SXSkinComponents distribution package. Then copy the folder Skins to the folder Template. After that follow steps, described on the form.



Pulisher : www.saarixx.info

Download Page : Download

400 Free PNG Icon For Your Application

Friday, May 23, 2008

Enhance Your Application with this 400 Free Icon.

Over 400 Free Icon in 10x10 and 16x16 pixel size ready to enchance your Application Interface. you can use this icon for any personal or commercial purpose/projects - absolutely free.




Publisher: www.pinvoke.com

Download Here (291 KB)

Membuat Aplikasi Database Berbasis Table XML Dengan Delphi 2007

Tuesday, May 20, 2008

Umumnya setiap Aplikasi Database menggunakan File Database dengan format umum seperti Microsoft Access, Paradox, DBase atau jika Aplikasi Database Client-Server akan menggunakan Database Software seperti SQL Server, Oracle dan lain sebagainya. nah Pada tutorial pemrograman Delphi kali ini saya akan sharing cara membuat aplikasi Database dengan Table berbasis file XML. Aplikasi ini cocok untuk Aplikasi Database Desktop single user misalnya seperti aplikasi untuk me-manage daftar situs web penting/favorit kamu atau bisa juga untuk me-manage koleksi film DVD yang kamu punya, dan lain2. ini adalah contoh Aplikasi Database berbasis XML sederhana, namun tujuannya dari artikel ini adalah sharing pengetahuan kepada kamu yang mungkin belum mengetahui cara melakukan manipulasi data ke dalam file format XML yang mencakup Retrieve/Find (Select), Append (Insert), Edit (Update), dan Delete Data.



Disini kita akan membuat aplikasi dengan Delphi 2007 untuk me-manage koleksi website favorit kita misalnya. Field-field Data yang kita butuhkan adalah SiteID, SiteURL, dan SiteDesc. Field SiteID adalah ID unik untuk setiap situs, SiteURL adalah alamat URL website dan terakhir SiteDesc adalah deskripsi dari situs ini bisa kita tambahkan sebagai informasi tambahan isi/tema sebuah website.



Dibawah ini adalah table komponen-komponen yang kita butuhkan berserta nilai beberapa propertiesnya:















































































































































































































































Komponen



Properties



Value



Form1



Name



Fmain




Caption



Katalog Web



ClientDataSet



Name



CDS




FieldDefs



0 - SiteID, DataType: ftInteger, Size: 0

1 - SiteURL, DataType: ftString, Size: 50

2 - SiteDesc, DataType: ftString, Size: 255


Setelah itu klik kanan CDS, kemudian pilih Create Dataset. untuk membentuk struktur dataset diatas




FileName



KatalogWeb.xml



DataSource1



Name



DS




DataSet



CDS



GroupBox1



Name



GBsiteList




Caption



Website List



Edit1



Name



ECari



ListBox1



Name



LBSiteList



GroupBox2



Name



GBNew




Caption



Data Baru



Edit2



Name



ESiteID



Edit3



Name



ESiteURL



Memo1



Name



MSiteDesc



Button1



Name



BtnOK




Caption



OK



Button2



Name



BtnCancel




Caption



Cancel



GroupBox3



Name



GBDetail




Caption



Website Details



DBEdit1



Name



DBESiteID




DataSource



DS




DataField



SiteID



DBEdit2



Name



DBESiteURL




DataSource



DS




DataField



SiteURL



DBMemo1



Name



DBMSiteDesc




DataSource



DS




DataField



SiteDesc



BitBtn1



Name



BtnDel



BitBtn



Name



BtnEdit



Form2



Name



FEdit




Caption



Edit Website



Edit4



Name



ESiteID



GroupBox4



Name



GBEdit




Caption



Detail Website




Enable



False



Edit5



Name



ESiteURL



Memo2



Name



MSiteDesc



Button3



Name



BtnOK




Caption



OK



Button4



Name



BtnCancel




Caption



Cancel




ModalResult



mrCancel




Application Interface


Tambahkan beberapa label kemudian Atur komponen-komponen diatas sehingga Interface nya menjadi seperti gambar di bawah ini :


Application Interface Design


Coding


File KatalogWeb.xml akan kita tempatkan satu folder dengan file exe aplikasi ini. Kita akan menambahkan kode Program untuk membuat file KatalogWeb.xml pada saat aplikasi pertama dijalankan untuk itu kita perlu menambahkan kode Program pada event OnCreate Form1 caranya dobel klik Form1 kemudian tambahkan kode Program dibawah ini :




procedure TFMain.FormCreate(Sender: TObject);

var namafile : string;

begin

  CDS.Close;

  //mendapatkan path absolute file KatalogWeb.xml

  namafile := extractfilepath(application.ExeName)+cds.filename;



  if not FileExists(namafile) then CDS.CreateDataSet;

  CDS.Open;



  //mengosongkan item pada SiteList

  LBSiteList.Clear;

  LBSiteList.Items.BeginUpdate;



  //membuka dan menampilkan recordset

  CDS.First;

  while not CDS.Eof do

  begin

    LBSiteList.Items.Add(CDS.FieldByName('SiteURL').AsString);

    CDS.Next;

  end;



  LBSiteList.Items.EndUpdate;

  ESiteID.Text := IntToStr(Succ(LBSiteList.Items.Count));

end;



Variabel NamaFile digunakan untuk menampung path lengkap (absolute path) nama file dari file XML yang akan kita gunakan sebagai tempat penyimpanan data aplikasi ini. function ExtractFilePath(application.ExeName) akan mendapatkan path lengkap dimana file .exe aplikasi ini berada. jadi jika kamu menempatkan aplikasi ini pada folder C:\Programming\Delphi\Database\Katalog Web\WebCatalog.exe misalnya, maka function ini akan menghasilkan string C:\Programming\Delphi\Database\Katalog Web\. Sehingga kode program extractfilepath(application.ExeName)+CDS.filename akan menghasilkan string path lengkap ke file KatalogWeb.xml dalam contoh saya adalah C:\Programming\Delphi\Database\Katalog Web\KatalogWeb.xml.



Menambahkan Data


Dobel klik BtnOK pada form FMain kemudian tambahkan kode Program berikut





procedure TFMain.BtnOKClick(Sender: TObject);

begin

  CDS.AppendRecord([StrToInt(ESiteID.Text), ESiteURL.Text, MSiteDesc.Text]);

  ECari.Clear;



  // refresh listbox daftar web

  LBSiteList.Clear;

  LBSiteList.Items.BeginUpdate;



  //membuka dan menampilkan recordset pada LBSiteList

  CDS.First;

  while not CDS.Eof do

  begin

    LBSiteList.Items.Add(CDS.FieldByName('SiteURL').AsString);

    CDS.Next;

  end;

  LBSiteList.Items.EndUpdate;

  ESiteID.Text := IntToStr(Succ(LBSiteList.Items.Count));



  ESiteURL.Clear;

  msitedesc.clear;

  ESiteURL.SetFocus;

end;



Mencari Data


masukan kode Program berikut pada event OnChange komponen ECari





procedure TFMain.ECariChange(Sender: TObject);

const

  SUBSTRING = 'Substring(SiteURL, 1, %d) = ''%s''';

var

  URLPilih: string;

begin

  CDS.Filter := Format(SUBSTRING, [Length(ECari.Text), ECari.Text]);

  //mem-filter dataset jika teks ECari tidak kosong

  CDS.Filtered := ECari.Text <> '';



  LBSiteList.Clear;

  LBSiteList.Items.BeginUpdate;



  //membuka dan menampilkan recordset

  CDS.First;

  while not CDS.Eof do

  begin

    LBSiteList.Items.Add(CDS.FieldByName('SiteURL').AsString);

    CDS.Next;

  end;

  LBSiteList.Items.EndUpdate;



  //mendapatkan nilai SiteID selanjutnya (Successor)

  //berdasarkan jumlah item yg ada di LBSiteList

  ESiteID.Text := IntToStr(Succ(LBSiteList.Items.Count));



  URLPilih := CDS.FieldByName('SiteURL').AsString;

  LBSiteList.ItemIndex := LBSiteList.Items.IndexOf(URLPilih);

end;


Incremental Search


Menampilkan Detail Data Website ketika item di LBSiteList diklik


Dobel klik LBSiteList, masukan kode Program berikut




if LBSiteList.ItemIndex <> -1 then

  CDS.Locate('SiteURL', LBSiteList.Items[LBSiteList.ItemIndex], []);


Application Interface - Runtime

Mengedit Data


Karena Aplikasi ini akan memanggil Form FEdit dari FMain, maka terlebih dahulu deklarasikan unit UEdit di Unit Umain. caranya ketikan Uses UEdit; di bawah implementation pada unit Umain. Setelah itu dobel klik BtnEdit kemudian masukan kode Program berikut pada Unit UMain.pas (Fmain)




with TFEdit.Create(Self) do

begin

  ESiteID.Text := cds.FieldByName('SiteID').AsString;

  ESiteURL.Text := cds.FieldByName('SiteURL').AsString;

  MSiteDesc.Text := cds.FieldByName('SiteDesc').AsString;

  ShowModal;



  if ModalResult = mrOK then

  begin

    CDS.Edit;

    cds.Fields[1].Value := ESiteURL.Text;

    cds.Fields[2].Value := MSiteDesc.Text;

    cds.Post;

    ECari.Clear;



    LBSiteList.Clear;

    LBSiteList.Items.BeginUpdate;

    CDS.First;

    LBSiteList.Clear;

    while not CDS.Eof do

    begin

    LBSiteList.Items.Add(CDS.FieldByName('SiteURL').AsString);

    CDS.Next;

    end;



  LBSiteList.Items.EndUpdate;

  end;

  Free;

end;



dan kode Program berikut pada unit UEdit.pas (FEdit)




procedure TFEdit.BtnOKClick(Sender: TObject);

const

  valid: array[Boolean] of TModalResult = (mrNone, mrOK);

begin

  //modalResult = mrOK jika ESiteURL dan MSiteDesc diisi

  //selain dari itu modalResult = mrNone

  ModalResult := valid[(ESiteURL.Text <> '') and (MSiteDesc.Text <> '')];

  if ModalResult = mrNone then

  MessageDlg('URL dan deskripsi situs harus diisi',

    mtInformation, [mbOK], 0);

end;


Edit Data

Menghapus Data


Dobel klik button btnDel kemudian tambahkan kode Program berikut





const

  konfirmasi = 'Anda akan menghapus alamat URL :'#13;

begin

  //konfirmasi hapus Record

  if MessageDlg(konfirmasi +

    LBSiteList.Items[LBSiteList.ItemIndex] + #13'Lanjutkan?',

    mtConfirmation, mbYesNo, 0) = mrYes then

  begin

    CDS.Delete;

    LBSiteList.Clear;

  LBSiteList.Items.BeginUpdate;



  //membuka dan menampilkan recordset

  CDS.First;

  while not CDS.Eof do

  begin

    LBSiteList.Items.Add(CDS.FieldByName('SiteURL').AsString);

    CDS.Next;

  end;

  LBSiteList.Items.EndUpdate;

  ESiteID.Text := IntToStr(Succ(LBSiteList.Items.Count));

  end;

end;





selengkapnya kamu bisa download Source Code Aplikasi ini disini.

MySQL Database Administration Tools Gratis:DreamCoder for MySQL 4.1.1.5

Wednesday, May 14, 2008

Seperti DreamCoder for Oracle, DreamCoder for MySQL free edition adalah sebuah Database Admin tool gratis dari Mentat Technologies yang bisa digunakan untuk Administrasi dan Development Database MySQL. Meskipun feature untuk free edition ini tidak selengkap dengan yang versi komersialnya, namun software ini mempunyai feature yang sangat berguna untuk Administrasi Database sederhana seperti Create Table, Create User, Create Database, Generate Table SQL dan lain-lain. Selain sebagai SQL Editor, tool ini juga menyediakan kemudahan dalam Administrasi Database seperti User Management (Create, Drop User), Database Object Management (Create Database, Create Table, Create Function, Index) dan berbagai feature lain. Selengkapnya kamu bisa baca deskripsi dari publishernya dibawah ini, atau kunjungi langsung home page publishernya diatas.



DreamCoder for MySQL Description :


DreamCoder for MySQL is a powerful software solution for MySQL Database administration and development. Our very intuitive interface will save you time and money.


DreamCoder for MySQL works with all MySQL versions from 3.23 to 6.0 and supports all MySQL features including tables, views, procedures, functions, triggers, InnoDB Tables, foreign keys , UDFS, BLOB Types, etc. It also includes the most advanced options for data manipulation, build queries visually, execute queries, script execution, reports generation, database monitoring and export and import data to/from most popular file formats.


DreamCoder for MySQL replace the popular MySQL Turbo Manager. DreamCoder for MySQL is a professional database tool for both expert and inexperienced MySQL users.



Principal features



  • SSH Tunnel connection

  • Characterset Encodings (UTF8, GB2312, BIG5, Hebrew, Greek, etc.)

  • SSL connection

  • Administration of project

  • MDI Interface - Microsoft Office Style

  • User Manager

  • Report Designer - build powerful reports visually

  • HTML Report Generator

  • Master Detail Table Browser

  • Database Reports

  • SQL Formatter

  • Database Data Synchronization

  • Database Structure Synchronization

  • Advanced Query Builder

  • Object Description

  • List Value for foreing keys

  • SQL History

  • Powerful PHP code editor

  • Powerful HTML code editor

  • Powerful Java code editor

  • Powerful XML code editor

  • PHP Highlighter

  • Java Highlighter

  • HTML Highlighter

  • XML Highlighter

  • Procedure Evaluator

  • UDF Manager

  • BLob Viewer

  • Database Transfer

  • Clone Object

  • Export Manager

  • Connection manager

  • Graphical TABLE status

  • Graphical databases status

  • Generate Table SQL

  • SQL Autocomplete

  • Constraint Manager

  • Index Manager

  • Graphical Session Monitor

  • Foreign key support for InnoDB tables


System requirements

DreamCoder for MySQL will run on Windows 95, 98, NT4, 2000, 2003 and XP. The supported MySQL Server versions are 3.23, 4.0, 4.1 and 6.0 or higher on any platform. To connect to an MySQL database, DreamCoder for MySQL only requires TCP/IP.





Download : Disini (10.03 MB)

Database Admin Tool Gratis: DreamCoder for Oracle 2.1.1.0 Free Edition

DreamCoder for Oracle adalah salah satu SQL Editor sekaligus Database Administration Tool untuk Oracle Developer/Oracle SQL Developer dari Mentat Technologies. DreamCoder for Oracle ini terdiri dari 5 versi yaitu versi DBA, Enterprise, Profesional, Standard, dan versi free. nah yang sedang saya bicarakan ini adalah yang versi free. Meskipun free tapi featurenya lumayan diantaranya syntax highlighting, integrated SQL Plus Console, Advance query Builder, Object Browser dan lain-lain. Selain itu juga Software ini menyertakan File help yang cukup membantu yang berisi Penjelasan tentang error code di Oracle, beberapa Syntax SQL Oracle dan beberapa Function SQL Oracle umum.



dibawah ini adalah dan Feature dan deskripsi DreamCoder dari sang publisher:



DreamCoder for Oracle Description:


DreamCoder for Oracle is a powerful Integrated Development Environment (IDE) for Oracle Databases. Using the intuitive DreamCoder's GUI will increase your code quality and reduce the development process time.


DreamCoder for Oracle easily enables you to build and execute queries, build and execute scripts, compile and debug SQL and PL/SQL code, create and modify database objects, import and export data, enable user session monitoring and database monitoring among other features.


DreamCoder for Oracle offers powerful visual tools to increase your productivity such as a SQL editor, procedure builder, master detail table browser, parameter manager, code inspector, describe objects, SQL Formatter, SQL Plus Console, Lov Viewer, object extractor, database reports and more.


Principal features




  • Powerful PL/SQL Editor

  • Procedure Builder

  • Master detail Table browser

  • Parameter Manager

  • Value List for foreign keys

  • Code Inspector

  • Procedure Evaluator

  • Synonym Manager

  • Describe all objects (F4)

  • SQL and PL/SQL Code Formatter(Only Enterprise Edition)

  • Database system monitor (Only Professional Edition)

  • SQL Plus Console

  • Lov Viewer

  • CLOB support

  • Database Session monitor

  • SQL Window

  • Administration of project

  • Object Browser

  • Non-PL/SQL Objects

  • Template List

  • Compare User Objects

  • Export User Objects

  • Advanced Query Builder

  • Describe Object

  • Object Finder

  • Filter of Objects

  • Recycle bin (10g)

  • Object extractor

  • SQL History

  • Database reports

  • Object compiler assistant

  • Support partition tables and partition indexes

  • DML code generator

  • Integrated Debugger (requires Oracle 7.3.4 or later)

  • Direct connection without SQL*Net.

  • Account Password Encryption.

  • MDI Interface - Microsoft Office Style

  • Workgroup development

  • Dockable environment

  • Easy installation



System requirements:

DreamCoder will run on Windows 95, 98, NT4, 2000, 2003 and XP. The supported Oracle Server versions are 8i, 9i and 10g on any platform. To connect to an Oracle database, DreamCoder only requires a 32-bit SQL*Net or Net 8 or Net 9 version to debugger.



Download Disini (12.0 MB)

Info Software: MySQL 6.0 Database - Alpha Release

Saturday, May 10, 2008

Open Source Database Populer


Deskripsi dari Publisher




NOTE: This alpha release, as any other pre-production release, should not be installed on production level systems or systems with critical data. It is good practice to back up your data before installing any new version of software. Although MySQL has worked very hard to ensure a high level of quality, protect your data by making a backup as you would for any other software beta release. MySQL generally recommends that you dump and reload your tables from any previous version to upgrade to 6.0.



  • The new Falcon transactional storage engine ("The Falcon Storage Engine")

  • Optimizer enhancements for faster subqueries and joins, including batched index access of table rows for sequences of disjoint ranges by the MyISAM and InnoDB storage engines

  • Support for additional Unicode character sets: utf16, utf32, and 4-byte utf8. These character sets support supplementary Unicode characters; that is, characters outside the Basic Multilingual Plane (BMP).

  • RESET SLAVE no longer changes replication connection parameters; previously, it reset them to the values specified on the command line

  • Enhancements to XML functionality, including a new LOAD XML statement

  • Replication conflict detection and resolution


  • Online ADD COLUMN, ADD INDEX, and DROP INDEX operations

  • Replication heartbeats, which enable real-time detection of replication failures and real-time failover



Publisher : dev.mysql.com

Download Disini

Info Software: Access Database Recovery Software - Gratis

Software ini bisa digunakan untuk memperbaiki file ms Access yang corrupt


Deskripsi dari publisher:

Access Database Mechanic is a free tool from aadconsulting.com. this tool will automaticaly attempt to recover a corrupt MS Access database, using three operations: compact & repair, decompile, and complete rebuild of an .mdb. The applet also features a fail-safe mechanism that creates a uniquely named back-up copy of the .mdb before any recovery operation is attempted. This Versions Works on Access2000/2002/2003.



Version 1.1 adds:



  • Support for the Microsoft JET Compact Repair Utility

  • Now features rebuild for addtional objects: Import/Export Specifications, References, and Custom CommandBars

  • File download is one-fifth the size of v1.0 with a new and faster Install set.



Publisher : www.aadconsulting.com

Download disini

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

    Tips Pemrograman Delphi: Pengaturan Layout Control Dengan Anchors

    Monday, May 5, 2008

    Mungkin ini adalah tips Delphi sederhana, tetapi banyak para Delphiers pemula belum mengetahui fungsi dari properties Anchors ini. Properties Anchors ini dimiliki oleh hampir semua komponen yang bisa dilihat pada saat Runtime di Delphi seperti komponen Edit, DBGrid, Combobox, Listbox, Memo dan lain-lain.


    Fungsi dari Properties Anchors ini adalah untuk menjaga posisi ujung (edge) sebuah Control terhadap sebuah ujung parent nya. dengan begitu sebuah control/komponen akan mempunyai posisi yang relative terhadap parent nya meskipun Window parent nya di Resize atau di Maximize. Sebagai contoh jika Sebuah control di set properties Anchors left dan Right nya, maka lebar control tersebut akan mengikuti ukuran parent nya ketika parent tersebut di-Resize atau di-Maximize, begitu pula jika diset properties Anchors Top dan Bottom nya maka, sebuah komponen Control akan mengikuti ukuran tinggi dari parent nya.



    Agar lebih jelas kamu bisa ikuti langkah-langkah berikut ini :



    • Buat sebuah Project Baru tambahkan sebuah Memo dan Button sehingga Interface nya seperti gambar dibawah ini



    • Delphi Anchors Properties
    • Set Properties Anchors Left dan Right komponen Memo menjadi True dan Set Propeties Anchors Right dan Buttom komponen Button menjadi True



    • Delphi Anchors Properties
    • Run Program

    • Sekarang coba kamu resize window Form1


    Delphi Anchors Properties

    Kamu bisa lihat lebar komponen Memo1 mengikuti parent nya yaitu Form1 ketika di resize atau di maximize dan sisi kiri dan kanan komponen Memo1 mempunyai jarak yang tetap dengan sisi kiri dan kanan Form1 seperti pada saat Design. sedangkan ujung atas dan bawah komponen Memo1 tidak. Sedangkan komponen Button1 hanya menjaga jarak sisi kanan dan bawahnya saja karena kita tadi hanya men-set properties Anchors Right dan Bottom saja, sehingga Button1 tidak ikut Stretch ketika Form1 di Resize atau di Maximize.



    Kamu bisa set Properties Anchors Top dan Bottom komponen Memo1 menjadi True agar semua sisinya mengikuti Parent nya sehingga posisinya relative terhadap parent nya.


    Delphi Component anchors Properties

    Beberapa Cara Untuk Menghubungkan Visual Basic Dengan Database MS SQL Server

    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.

    Recent Comments

    Tags Cloud

    Blogumulus by Roy Tanck and Amanda Fazani