java.sqlパッケージは、Javaプログラミング言語を使用してデータソース(たいていはリレーショナルデータベース)に蓄積されたデータのアクセスや処理のためのAPIを提供します。
インタフェース | 説明 |
---|---|
java.sql.Connection | データベースとの接続を表現するインタフェース |
クラス | 説明 |
---|---|
java.sql.DriverManager | JDBCドライバのセットを管理する基本サービスクラス |
java.sql.Time | SQLのDATE型として識別されるjava.util.Dateのラッパー |
java.sql.Timestamp | SQLのTIMESTAMP型として識別されるjava.util.Dateのラッパー |
Connectionは、データベースとの接続を表現するインタフェースである。
戻り値の型 | メソッド | 説明 |
---|---|---|
void |
close() |
データベースとJDBCリソースを解放する。 |
void |
commit() |
トランザクションをコミットする。 |
void |
rollback() |
トランザクションをロールバックする。 |
boolean |
isClosed() |
接続がクローズされているか否かを返す。 |
java.sql.DriverManagerクラスは、JDBCドライバのセットを管理する基本サービス・クラスです。
getConnection メソッドは、与えられたデータベースURLへ接続を試みます。
static Connection getConnection(String url) throws SQLException
static Connection getConnection(String url, Properties info) throws SQLException
static Connection getConnection(String url, String user, String password) throws SQLException
java.lang.Object - java.util.Date - java.sql.Time
public class Time extends Date
このクラスは、java.util.Date のラッパーです。このラッパーによって JDBC はこれを SQL TIME 値として識別できます。time 値の JDBC エスケープ構文をサポートするためのフォーマットと構文解析を提供します。
このクラスは、java.util.Date のラッパーです。このラッパーによって JDBC はこれを SQL TIMESTAMP 値として識別できます。これは SQL TIMESTAMP の nanos 値(ナノ秒の値)を保持する機能を加え、 timestamp 値の JDBC エスケープ構文をサポートするためのフォーマットと構文解析を提供します。
このタイプは java.util.Date と nanos 値とからなります。秒の整数値のみが java.util.Date コンポーネントに格納され、小数点以下の秒 (秒のナノ値) は別のコンポーネントに格納されます。getTime メソッドは、秒の整数値のみを返します。小数点以下の秒を含む時間が必要な場合は、秒の nanos 値をミリ秒に変換し getTime 値に加えなければなりません。hashcode() メソッドは、java.util.Data 実装を使用するので、計算には nanos 値を含めないことに注意しなければなりません。
コンストラクタ | 説明 |
---|---|
Timestamp(long
time
)
|
ミリ秒の値を使用して、Timestampオブジェクトを構築する。 |
Timestampに現在の日時を設定する。
Calendar calendar = Calendar.getInstance();
Date now = calendar.getTime();
Timestamp timestamp = new Timestamp(now.getTime());
Timestampに任意の日時を設定する。
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmm");
Date date = sdf.parse("201707011234");
Timestamp timestamp = new Timestamp(date.getTime());
java.sql.SQLException は、データベース・アクセス・エラーまたはその他のエラーに関する情報を提供する例外である。
public class SQLException
extends Exception
implements Iterable<Throwable>
java.sql.SQLException は、以下に示すインタフェースを実装している。
java.sql.SQLException は、以下に示すコンストラクタを持つ。
SQLException()
SQLException(String reason)
SQLException(String reason, String SQLState)
SQLException(String reason, String SQLState, int vendorCode)
SQLException(String reason, String sqlState, int vendorCode, Throwable cause)
SQLException(String reason, String sqlState, Throwable cause)
SQLException(String reason, Throwable cause)
SQLException(Throwable cause)
以下に示す引数を java.sql.SQLException のコンストラクタに指定することができる。
このSQLExceptionオブジェクトのSQLStateを取得する。
public String getSQLState()
SQLSTATE | 説明 |
---|---|
00000 | 正常終了 |
01002 | disconnect error |
01003 | null value eliminated in set function |
01004 | string data, right truncation |
01005 | insufficient item descriptor areas |
01006 | privilege not revoked |
01007 | privilege not granted |
01009 | search condition too long for information schema |
0100A | query expression too long for information schema |
0100C | result sets returned |
0100D | additional result sets returned |
0100E | attempt to return too many result sets |
02001 | no additional result sets returned |
07001 | using clause does not match dynamic parameter specifications |
08001 | SQL-client unable to establish SQL-connection |
09000 | triggered action exception |
0A001 | multiple server transactions |
0E000 | invalid schema name list specification |
0F001 | invalid specification |
SQLStateを取得する例を次に示す。
try {
//
} catch (java.sql.SQLException e) {
String sqlState = e.getSQLState();
}
このSQLExceptionオブジェクトのベンダー固有の例外コードを取得する。
public int getErrorCode()
ベンダー固有の例外コードを取得する例を次に示す。
try {
//
} catch (java.sql.SQLException e) {
int errorCode = e.getErrorCode();
}