Práce s připojením

Stáhnout ovladač JDBC

Následující části obsahují příklady různých způsobů připojení k databázi SQL Serveru pomocí třídy SQLServerConnection ovladače Microsoft JDBC pro SQL Server.

Poznámka:

Pokud máte problémy s připojením k SQL Serveru pomocí ovladače JDBC, přečtěte si téma Řešení potíží s připojením , kde najdete návrhy, jak ho opravit.

Vytvoření připojení pomocí třídy DriverManager

Nejjednodušším přístupem k vytvoření připojení k databázi SQL Serveru je načtení ovladače JDBC a volání metody getConnection třídy DriverManager, jak je znázorněno v následujícím příkladu:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");  
String connectionUrl = "jdbc:sqlserver://localhost;encrypt=true;database=AdventureWorks;integratedSecurity=true;"  
Connection con = DriverManager.getConnection(connectionUrl);  

Tato technika vytvoří připojení k databázi pomocí prvního dostupného ovladače v seznamu ovladačů, které se můžou úspěšně připojit s danou adresou URL.

Poznámka:

Při použití knihovny tříd sqljdbc4.jar nemusí aplikace explicitně zaregistrovat ani načíst ovladač pomocí metody Class.forName. Když je volána metoda getConnection třídy DriverManager, je nalezen odpovídající ovladač ze sady registrovaných ovladačů JDBC. Další informace naleznete v tématu Použití ovladače JDBC.

Vytvoření připojení pomocí třídy SQLServerDriver

Pokud potřebujete zadat konkrétní ovladač v seznamu ovladačů pro DriverManager, můžete vytvořit připojení k databázi pomocí metody connect třídy SQLServerDriver , jak je znázorněno v následujícím příkladu:

Driver d = (Driver) Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();  
String connectionUrl = "jdbc:sqlserver://localhost;encrypt=true;database=AdventureWorks;integratedSecurity=true;"  
Connection con = d.connect(connectionUrl, new Properties());  

Vytvoření připojení pomocí třídy SQLServerDataSource

Pokud je nutné vytvořit připojení pomocí SQLServerDataSource třídy, můžete použít různé metody setter třídy před voláním getConnection metoda, jako v následující:

SQLServerDataSource ds = new SQLServerDataSource();  
ds.setUser("MyUserName");  
ds.setPassword("*****");  
ds.setServerName("localhost");  
ds.setPortNumber(1433);
ds.setDatabaseName("AdventureWorks");  
Connection con = ds.getConnection();  

Vytvoření připojení, které cílí na konkrétní zdroj dat

Pokud potřebujete vytvořit připojení k databázi, které cílí na konkrétní zdroj dat, existuje řada přístupů, které můžete využít. Každý přístup závisí na vlastnostech, které jste nastavili pomocí adresy URL připojení.

Pokud se chcete připojit k výchozí instanci na vzdáleném serveru, použijte následující příklad:

String url = "jdbc:sqlserver://MyServer;encrypt=true;integratedSecurity=true;"

Pokud se chcete připojit k určitému portu na serveru, použijte následující příklad:

String url = "jdbc:sqlserver://MyServer:1533;encrypt=true;integratedSecurity=true;"

Pokud se chcete připojit k pojmenované instanci na serveru, použijte následující příklad:

String url = "jdbc:sqlserver://209.196.43.19;encrypt=true;instanceName=INSTANCE1;integratedSecurity=true;"

Pokud se chcete připojit ke konkrétní databázi na serveru, použijte následující příklad:

String url = "jdbc:sqlserver://172.31.255.255;encrypt=true;database=AdventureWorks;integratedSecurity=true;"

Další příklady adres URL připojení najdete v tématu Sestavení adresy URL připojení.

Vytvoření připojení s časovým limitem vlastního přihlášení

Pokud potřebujete upravit zatížení serveru nebo síťový provoz, můžete vytvořit připojení s konkrétní hodnotou časového limitu přihlášení popsanou v sekundách, jak je znázorněno v následujícím příkladu:

String url = "jdbc:sqlserver://MyServer;encrypt=true;loginTimeout=90;integratedSecurity=true;"

Vytvořte připojení s identitou na aplikační úrovni

Pokud potřebujete použít protokolování a profilaci, budete muset identifikovat připojení jako pocházející z konkrétní aplikace, jak je znázorněno v následujícím příkladu:

String url = "jdbc:sqlserver://MyServer;encrypt=true;applicationName=MYAPP.EXE;integratedSecurity=true;"

Zavření připojení

Připojení k databázi můžete explicitně zavřít voláním metody close třídy SQLServerConnection, jak je znázorněno v následujícím příkladu:

con.close();

Tím se uvolní prostředky databáze, které objekt SQLServerConnection používá, nebo vrátí připojení do poolu připojení v případech, kdy se používají pooly.

Poznámka:

Volání metody close také vrátí zpět všechny čekající transakce.

Viz také

připojení k SQL Serveru pomocí ovladače JDBC