Connection strings for Synapse SQL
You can connect to Synapse SQL with several different application libraries such as, ADO.NET, ODBC, PHP, and JDBC. Below are some examples of connections strings for each library.
Important
Use Microsoft Entra authentication when possible. For more information, see Use Microsoft Entra authentication for authentication with Synapse SQL.
You can also use the Azure portal to build your connection string. To build your connection string using the Azure portal, navigate to your database blade, under Essentials select Show database connection strings.
This simple example uses SQL authentication, but Microsoft Entra authentication with ADO.NET is more secure and recommended.
Server=tcp:{your_server}.sql.azuresynapse.net,1433;Database={your_database};User ID={your_user_name};Password={your_password_here};Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
This simple example uses SQL authentication, but Microsoft Entra authentication with ODBC is more secure and recommended.
Driver={ODBC Driver 18 for SQL Server};Server=tcp:{your_server}.sql.azuresynapse.net,1433;Database={your_database};Uid={your_user_name};Pwd={your_password_here};Encrypt=yes;TrustServerCertificate=no;Connection Timeout=30;
This simple example uses SQL authentication, but Microsoft Entra authentication with PHP is more secure and recommended.
Server: {your_server}.sql.azuresynapse.net,1433 \r\nSQL Database: {your_database}\r\nUser Name: {your_user_name}\r\n\r\nPHP Data Objects(PDO) Sample Code:\r\n\r\ntry {\r\n $conn = new PDO ( \"sqlsrv:server = tcp:{your_server}.sql.azuresynapse.net,1433; Database = {your_database}\", \"{your_user_name}\", \"{your_password_here}\");\r\n $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );\r\n}\r\ncatch ( PDOException $e ) {\r\n print( \"Error connecting to SQL Server.\" );\r\n die(print_r($e));\r\n}\r\n\rSQL Server Extension Sample Code:\r\n\r\n$connectionInfo = array(\"UID\" => \"{your_user_name}\", \"pwd\" => \"{your_password_here}\", \"Database\" => \"{your_database}\", \"LoginTimeout\" => 30, \"Encrypt\" => 1, \"TrustServerCertificate\" => 0);\r\n$serverName = \"tcp:{your_server}.sql.azuresynapse.net,1433\";\r\n$conn = sqlsrv_connect($serverName, $connectionInfo);
This simple example uses SQL authentication, but Microsoft Entra authentication with JDBC is more secure and recommended.
jdbc:sqlserver://yourserver.sql.azuresynapse.net:1433;database=yourdatabase;user={your_user_name};password={your_password_here};encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.sql.azuresynapse.net;loginTimeout=30;
Note
Consider setting the connection timeout to 300 seconds to allow the connection to survive short periods of unavailability and provide enough time for paused instances to resume.
For executing serverless SQL pool queries, recommended tools are Azure Data Studio and Azure Synapse Studio.
To start querying your analytics with Visual Studio and other applications, see Query with Visual Studio.