Connecting to MySQL Server

This tutorial describes how to connect to MySQL using the TMyConnection component.

  1. Requirements
  2. General Information
  3. Creating a Connection
  4. Opening a Connection
  5. Modifying a Connection
  6. Closing a Connection
  7. Additional Information
  8. See Also


This tutorial assumes that you have installed MyDAC and run the database server and the IDE. You need to know the server address, the port number (if you use a port other than the default port 3306), the database name, and the username and password. To connect at runtime, add the MyAccess unit to the uses clause for Delphi or include the MyAccess.hpp header file for C++ Builder.

General Information

To establish a connection to the server, set up the properties of the TMyConnection component: Server, Port, Database, Username, and Password. You can also specify all connection parameters in the ConnectString property.

You can connect to MySQL in the Direct mode or using the MySQL client library. The connection mode is defined by the Direct property, which defaults to True. To access MySQL using the client library, set the property to False.

MyDAC can also work with the embedded MySQL server. For information about connecting to the embedded server, see Connecting to MySQL Embedded.

Creating a Connection

Connecting at Design-Time

The following assumes that you have already created or opened an existing form in the IDE. At design-time, you can set up a TMyConnection object in the TMyConnection Editor or Object Inspector.

  1. Find the TMyConnection component in the MyDAC category on the Tool Palette.
  2. Double-click the component. A new object will appear on the form. If this is the first time that you create a TMyConnection object in this project, the object will be named MyConnection1.

Using TMyConnection Editor

  1. Double-click the MyConnection1 object.
  2. Specify the DNS name or IP address of the MySQL server in the Server edit box.
  3. If you use a port other than the default port 3306, specify it in the Port edit box.
  4. Specify the database name in the Database edit box.
  5. Specify the username (root by default) in the Username edit box.
  6. Specify the password (empty value by default) in the Password edit box.

Using Object Inspector

  1. Select the MyConnection1 object on the form.
  2. Set the Database property to the database name.
  3. Set the Password property to the password (root by default).
  4. If you use a port other than the default port 3306, set the Port property to your port.
  5. Set the Server property to the DNS name or IP address of the MySQL server.
  6. Set the Username property to the username (empty value by default).

Connecting at Runtime

The same connection parameters at runtime are set up as follows:


  MyConnection1: TMyConnection;
  MyConnection1 := TMyConnection.Create(nil);
    // adds connection parameters
    MyConnection1.Server := 'server'; 
    MyConnection1.Database := 'database';
    MyConnection1.Username := 'username';
    MyConnection1.Password := 'password';
    MyConnection1.Port := 3306;
    // diables a login prompt
    MyConnection1.LoginPrompt := False; 
    // opens a connection

C++ Builder

	TMyConnection* MyConnection1 = new TMyConnection(NULL);
try {
	// adds connection parameters
	MyConnection1->Server = "server"; 
    MyConnection1->Database = "database";
	MyConnection1->Username = "username";
	MyConnection1->Password = "password";
	MyConnection1->Port = 3306;
	// diables a login prompt
	MyConnection1->LoginPrompt = False; 
	// opens a connection
__finally {

Opening a Connection

To open a connection at run-time, call the Open method:





Another way to open a connection at runtime is to set the Connected property to True:


MyConnection1.Connected := True;

C++ Builder

MyConnection1->Connected = True;

You can also set up the Connected property at design-time in the Object Inspector.

Modifying a Connection

You can modify a connection by changing properties of the TMyConnection object. Note that while some of the object's properties can be altered without changing the state of a connection, in most cases, a connection is closed when a new value is assigned to the property. For example, if you change the value of the Server property, a connection is closed immediately and you need to reopen it manually.

Closing a Connection

To close a connection, call the Close method or set the Connected property to False:




MyConnection1.Connected := False;

C++ Builder



MyConnection1->Connected = False;

Additional Information

MyDAC offers a wide set of features to achieve better performance, balance network load, and enable additional capabilities, for example:

See Also

© 1997-2022 Devart. All Rights Reserved. Request Support DAC Forum Provide Feedback