Connettersi a Synapse SQL

Connettersi alla funzionalità Synapse SQL in Azure Synapse Analytics.

Strumenti supportati per il pool SQL serverless

Azure Data Studio è completamente supportato a partire dalla versione 1.18.0. SSMS è parzialmente supportato a partire dalla versione 18.5 ed è possibile usarlo solo per connettersi ed eseguire query.

Nota

Se un accesso di AAD ha una connessione aperta per più di un'ora al momento dell'esecuzione della query, tutte le query che si basano su AAD avranno esito negativo. È inclusa l'esecuzione di query sull'archiviazione tramite pass-through di AAD e le istruzioni che interagiscono con AAD (ad esempio CREATE EXTERNAL PROVIDER). Ciò influisce su tutti gli strumenti che mantengono aperta la connessione, ad esempio l'editor di query in SSMS e ADS. Gli strumenti che aprono una nuova connessione per eseguire query, ad esempio Synapse Studio, non sono interessati.

Per attenuare questo problema, è possibile riavviare SSMS o connettersi e disconnettersi in ADS.

Trovare il nome del server

Il nome del pool SQL dedicato nell'esempio seguente è showdemoweu.sql.azuresynapse.net. Il nome del server per il pool SQL serverless nell'esempio seguente è showdemoweu-ondemand.sql.azuresynapse.net.

Per trovare il nome completo del server, procedere come segue:

  1. Accedere al portale di Azure.
  2. Selezionare Aree di lavoro Synapse.
  3. Selezionare l'area di lavoro a cui connettersi.
  4. Passare a Panoramica.
  5. Individuare il nome completo del server.

Pool SQL

Full server name

Pool SQL serverless

Full server name serverless SQL pool

Driver supportati e stringhe di connessione

Synapse SQL supporta ADO.NET, ODBC, PHP e JDBC. Per trovare la versione e la documentazione più recenti, selezionare uno dei driver precedenti. Per generare automaticamente la stringa di connessione per il driver in uso dal portale di Azure, selezionare Mostra stringhe di connessione del database nell'esempio precedente. Di seguito sono riportati alcuni esempi di come si presenta la stringa di connessione per ogni driver.

Nota

Per preservare la connessione in caso di brevi periodi di indisponibilità, può essere opportuno impostare il timeout di connessione su 300 secondi.

Esempio di stringa di connessione ADO.NET

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;

Esempio di stringa di connessione ODBC

Driver={SQL Server Native Client 11.0};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;

Esempio di stringa di connessione PHP

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);

Esempio di stringa di connessione JDBC

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;

Impostazioni di connessione

Synapse SQL standardizza alcune impostazioni durante la connessione e la creazione di oggetti. Queste impostazioni, di cui non è possibile eseguire l'override, includono:

Impostazione del database valore
ANSI_NULLS ON
QUOTED_IDENTIFIERS ON
DATEFORMAT mdy
DATEFORMAT 7

Consigli

Per eseguire le query del pool SQL serverless, gli strumenti consigliati sono Azure Data Studio e Azure Synapse Studio.

Passaggi successivi

Per connettersi ed eseguire query con Visual Studio, vedere Eseguire query con Visual Studio. Per altre informazioni sulle opzioni di autenticazione, vedere Autenticazione in Synapse SQL.