Thursday, November 30, 2023
HomeProductsDelphi DACHow to Connect to SQL Server in Delphi with Devart SDAC

How to Connect to SQL Server in Delphi with Devart SDAC

Delphi is a popular programming language for developing Windows applications, and connecting to databases like SQL Server is a common requirement for many software projects. Devart SDAC is a powerful set of components that simplifies database connectivity in Delphi applications. In this article, we will walk you through the process of connecting to SQL Server using Devart SDAC, including installation and examples of how to interact with the components. We will also briefly compare SDAC with FireDAC to help you choose the right tool for your project.

Installing Devart SDAC

Devart SDAC is a comprehensive set of Delphi components that provides native connectivity to Microsoft SQL Server databases. It simplifies and enhances database development in Delphi applications by offering a wide range of features and benefits. 

SDAC Features:

  • Direct Connectivity: Devart SDAC offers direct and native access to Microsoft SQL Server databases without the need for additional libraries or drivers. This direct connectivity results in faster and more efficient data access.
  • Cross-Version Compatibility: SDAC supports various versions of Microsoft SQL Server, ensuring that your applications can connect to older and newer database servers seamlessly.
  • Wide Range of Data Types: SDAC provides support for a wide range of SQL Server data types, including user-defined types and table-valued parameters, making it suitable for applications dealing with complex data structures.
  • Advanced SQL Support: Devart SDAC allows you to execute SQL queries with ease. It supports complex SQL statements, stored procedures, and functions, enabling you to work with your SQL Server databases efficiently.
  • Performance Optimization: SDAC includes features such as connection pooling, query caching, and asynchronous queries to optimize the performance of your database operations, resulting in faster data retrieval and processing.
  • Unified Data Access: SDAC offers a unified approach to data access, allowing you to work with SQL Server data using the same components and code structure, regardless of the Delphi version you’re using.
  • Visual Query Builder: Devart SDAC includes a visual query builder tool that simplifies the process of creating SQL queries, reducing the need for manual coding and potential errors.
  • Secure Data Transmission: SDAC supports data encryption and secure socket layer (SSL) connections, ensuring that your data remains secure during transmission between your Delphi application and the SQL Server database.
  • BLOB Data Handling: Devart SDAC provides efficient handling of Binary Large Object (BLOB) data, making it suitable for applications that store and retrieve large files or multimedia content.

SDAC Benefits:

  • Improved Productivity: Devart SDAC streamlines database development in Delphi, allowing developers to focus on application logic rather than dealing with low-level database connectivity details.
  • High Performance: The direct connectivity and optimization features of SDAC result in faster database operations, which is crucial for applications that require quick data retrieval and processing.
  • Cross-Platform Compatibility: SDAC is compatible with multiple Delphi versions and works on both Windows and macOS, making it suitable for cross-platform development.
  • Secure Data Handling: With support for data encryption and secure connections, Devart SDAC ensures that sensitive data remains protected throughout the data transmission process.
  • Flexibility: Devart SDAC’s support for a wide range of SQL Server data types and features allows developers to build versatile applications that can handle various data scenarios.
  • Visual Query Building: The visual query builder simplifies SQL query creation, making it accessible to developers of varying skill levels and reducing the chances of SQL syntax errors.
  • Vendor Support: Devart offers excellent customer support and regular updates for SDAC, ensuring that your database connectivity remains reliable and up to date.

Before you can start using Devart SDAC, you need to install it on your development machine. Follow these steps:

  1. Visit the Devart website and download the SDAC package suitable for your Delphi version.
  2. Run the installer and follow the on-screen instructions.
  3. After installation, open Delphi IDE.

Creating a Connection

Now that you have Devart SDAC installed, let’s establish a connection to your SQL Server database.


procedure ConnectToSQLServer;
  Connection: TMSConnection;
  Connection := TMSConnection.Create(nil);
    Connection.Server := 'YourServerName';
    Connection.Database := 'YourDatabaseName';
    Connection.Username := 'YourUsername';
    Connection.Password := 'YourPassword';
    // Connection established successfully
    on E: Exception do
      ShowMessage('Connection error: ' + E.Message);

Replace ‘YourServerName’, ‘YourDatabaseName’, ‘YourUsername’, and ‘YourPassword’ with your SQL Server credentials.

Executing SQL Queries

Once connected, you can execute SQL queries using SDAC. Here’s an example of how to execute a simple query:


procedure ExecuteSQLQuery;
  Query: TMSQuery;
  Query := TMSQuery.Create(nil);
    Query.Connection := Connection; // Use the previously created connection
    Query.SQL.Text := 'SELECT * FROM YourTable';

    // Process the query results here


Fetching Data

To fetch data from the query result, you can use a loop. Here’s how you can retrieve records:

while not Query.Eof do
  // Access fields using Query.FieldByName('ColumnName').Value
  ShowMessage('Name: ' + Query.FieldByName('Name').AsString);

Inserting, Updating, and Deleting Records

Devart SDAC also supports data manipulation. Here’s an example of how to insert, update, and delete records:

procedure InsertUpdateDeleteRecords;
  // Insert
  Query.SQL.Text := 'INSERT INTO YourTable (Name, Age) VALUES ('John Doe', 30)';

  // Update
  Query.SQL.Text := 'UPDATE YourTable SET Age = 31 WHERE Name = 'John Doe'';

  // Delete
  Query.SQL.Text := 'DELETE FROM YourTable WHERE Name = 'John Doe'';

Comparing Devart SDAC with FireDAC

FireDAC is a powerful and flexible database access framework developed by Embarcadero Technologies. It is an integral part of the Embarcadero RAD Studio (formerly known as Borland Delphi) and C++Builder integrated development environments. FireDAC simplifies database connectivity and provides a unified, high-performance access layer for a wide range of DBMS, making it a popular choice among Delphi and C++Builder developers.

Devart SDAC and FireDAC are both excellent database connectivity components for Delphi. Here’s a brief comparison to help you choose the right one for your project:

Devart SDAC:

  • Specialized for various databases, including SQL Server.
  • Rich set of features, including advanced data types support.
  • Optimized for high-performance database access.
  • May require a separate license.


  • Part of the Delphi RAD Studio, no separate installation needed.
  • Supports a wide range of databases, including SQL Server.
  • Offers advanced features like data encryption and cross-platform development.
  • Included with RAD Studio, reducing licensing costs for some users.

Ultimately, the choice between Devart SDAC and FireDAC depends on your specific project requirements and licensing considerations.


We’ve demonstrated how to connect to SQL Server in Delphi using Devart SDAC. You’ve learned how to install the components, establish a database connection, execute SQL queries, fetch data, and manipulate records. Additionally, we provided a brief comparison between Devart SDAC and FireDAC to help you make an informed choice for your database connectivity needs in Delphi projects. With these skills, you can confidently integrate SQL Server databases into your Delphi applications using Devart SDAC. Good luck and feel free to contact our support team if you need any help with settings!