データ ソースのサンプル
この Microsoft JDBC Driver for SQL Server サンプル アプリケーションは、データ ソース オブジェクトを使用して SQL Server データベースに接続する方法を示しています。 また、ストアド プロシージャを使用して SQL Server データベースからデータを取得する方法も示します。
このサンプルのコード ファイルは ConnectDataSource.java という名前で、次の場所にあります。
\<installation directory>\sqljdbc_<version>\<language>\samples\connections
必要条件
このサンプル アプリケーションを実行するには、クラスパスを設定して mssql-jdbc jar ファイルを含める必要があります。 また、AdventureWorks2022 サンプル データベースへのアクセス権も必要です。 クラスパスを設定する方法の詳細については、「JDBC ドライバーの使用」を参照してください。
注意
SQL Server 用 Microsoft JDBC ドライバー には、必要な Java ランタイム環境 (JRE) 設定に応じて使用される mssql-jdbc クラス ライブラリ ファイルが用意されています。 選択する JAR ファイルの詳細については、「JDBC Driver のシステム要件」を参照してください。
例
次の例では、サンプル コードにより SQLServerDataSource オブジェクトの setter メソッドを使用してさまざまな接続プロパティを設定し、SQLServerDataSource オブジェクトの getConnection メソッドを呼び出して、SQLServerConnection オブジェクトを返します。
次に、サンプル コードは SQLServerConnection オブジェクトの prepareCall メソッドを使用して SQLServerCallableStatement オブジェクトを作成し、さらに executeQuery メソッドが呼び出されてストアド プロシージャを実行します。
最後に、サンプルでは executeQuery メソッドから返された SQLServerResultSet オブジェクトを使用して、ストアド プロシージャが返した結果を繰り返し処理します。
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.microsoft.sqlserver.jdbc.SQLServerDataSource;
public class ConnectDataSource {
public static void main(String[] args) {
// Create datasource.
SQLServerDataSource ds = new SQLServerDataSource();
ds.setUser("<user>");
ds.setPassword("<password>");
ds.setServerName("<server>");
ds.setPortNumber(<port>);
ds.setDatabaseName("AdventureWorks");
try (Connection con = ds.getConnection();
CallableStatement cstmt = con.prepareCall("{call dbo.uspGetEmployeeManagers(?)}");) {
// Execute a stored procedure that returns some data.
cstmt.setInt(1, 50);
ResultSet rs = cstmt.executeQuery();
// Iterate through the data in the result set and display it.
while (rs.next()) {
System.out.println("EMPLOYEE: " + rs.getString("LastName") + ", " + rs.getString("FirstName"));
System.out.println("MANAGER: " + rs.getString("ManagerLastName") + ", " + rs.getString("ManagerFirstName"));
System.out.println();
}
}
// Handle any errors that may have occurred.
catch (SQLException e) {
e.printStackTrace();
}
}
}