Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc75719.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc75719.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc75719.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,239 @@ + + + + + + + + + + + + + + + + + + + + + +CallableStatementsとINOUT引数 + + + + +

CallableStatementsとINOUT引数

+ + +
+

Javaのプログラムでは、INOUT引数に対して引数の型を要素とする配列が対応します。(メソッドは配列を引数としてとらなければなりません。) +この対応関係はSQL標準の推奨に沿ったものです。

+
+ +
次の例を考えます。:
CallableStatement call = conn.prepareCall(
+    "{CALL doubleMyInt(?)}");
+// 値を代入する前に引数を登録する事が、
+// inout引数では良いやり方です。
+call.registerOutParameter(1, Types.INTEGER);
+call.setInt(1,10);
+call.execute();
+int retval = call.getInt(1);
+
+
+ +
メソッドのdoubleItは一次元のint配列を取るべきです。メソッドのソースコードを次に例示します。
public static void doubleMyInt(int[] i) {
+    i[0] *=2;
+    /* Derbyは配列の最初の要素を返します。*/
+}
+
注: メソッドの引数と違って、返り値は配列ではありません。
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
表 1. INOUTの引数型の対応
JDBCの型メソッドの引数の配列型値と返り値の型
BIGINTlong[]long
BINARYbyte[][]byte[]
BITboolean[]boolean
DATEjava.sql.Date[]java.sql.Date
DOUBLEdouble[]double
FLOATdouble[]double
INTEGERint[]int
LONGVARBINARYbyte[][]byte[]
REALfloat[]float
SMALLINTshort[]short
TIMEjava.sql.Time[]java.sql.Time
TIMESTAMPjava.sql.Timestamp[]java.sql.Timestamp
VARBINARYbyte[][]byte[]
OTHERyourType[]yourType
JAVA_OBJECT (Java2/JDBC 2.0の環境でのみ有効)yourType[]yourType
+
+
+
+ +

呼び出し前に出力の引数を登録してください。INOUTの引数では、値を代入する前に出力の引数を登録するのが良いやり方です。

+
+ +
+ +
+ +
関連資料
+
CallableStatementsとOUT引数
+
+
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc75719.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc77156.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc77156.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc77156.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,383 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +java.sql.ResultSet + + + + +

java.sql.ResultSet

+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
表 1. ResultSetにて利用可能なJDBC 2.0のメソッド
返り値シグネチャ実装の但し書き
booleanabsolute(int row) 
voidafterLast() 
voidbeforeFirst() 
voidbeforeFirst() 
voiddeleteRow()行を削除するとResultSetの位置は次行の直前となります。ResultSetのcloseメソッド以外を呼び出す場合、プログラムはResultSetの位置を決めなおす必要があります。
booleanfirst() 
BlobgetBlob(int columnIndex)java.sql.Blobインターフェイスとjava.sql.Clobインターフェイスの対応を参照してください。
BlobgetBlob(String column-Name)
ClobgetClob(int columnIndex)
ClobgetClob(String column-Name)
intgetConcurrency()

Statementの平行処理がCONCUR_READ_ONLYである場合、このメソッドはResultSet.CONCUR_READ_ONLYを返します。 +それに対してStatementの平行処理がCONCUR_UPDATABLEであった場合、返り値の値は元となるSQLの結果セットが更新可能か否かにより決まります。もしSQLの結果セットが更新可能であれば、getConcurrency()はResultSet.CONCUR_UPDATABLEを返します。もしSQLの結果セットが更新不可能であれば、ResultSet.CONCUR_READ_ONLYが返ります。

+
intgetFetchDirection() 
intgetFetchSize()Always returns 1.
intgetRow() 
voidinsertRow() 
booleanisAfterLast() 
booleanisBeforeFirst 
booleanisFirst() 
booleanisLast() 
booleanlast() 
voidmoveToCurrentRow() 
voidmoveToInsertRow() 
booleanprevious() 
booleanrowDeleted()前方にのみ進むことができる結果セットではこのメソッドは常にfalseを返し、スクロール可能な結果セットにて行が削除された時には、このメソッドは結果セットあるいは位置指定した削除を介してtrueを返します。
booleanrowInserted()常にfalseが返ります。
booleanrowUpdated() +前方にのみ進むことができる結果セットではこのメソッドは常にfalseを返し、スクロール可能な結果セットにて行が更新された時には、このメソッドは結果セットあるいは位置指定した更新を介してtrueを返します。
booleanrelative(int rows) 
voidsetFetchDirection(int direction) 
voidsetFetchSize(int rows)A fetch size of 1 is the only size supported.
voidupdateRow()行を更新した直後、ResultSetの位置は次行の直前となります。 +ResultSetのcloseメソッド以外を呼び出す場合、プログラムはResultSetの位置を決めなおす必要があります。
+
+ +
+ +
+ +
関連概念
+
java.sqlにある、JDBCの主なクラス、 インターフェイス、メソッド
+
+
関連資料
+
java.sql.Driverインターフェイス
+
java.sql.DriverManager.getConnection メソッド
+
java.sql.Connection インターフェイス
+
java.sql.DatabaseMetaData インターフェイス
+
java.sql.Statementインターフェイス
+
java.sql.CallableStatement インターフェイス
+
java.sql.SQLException クラス
+
java.sql.PreparedStatementインターフェイス
+
java.sql.ResultSet インターフェイス
+
java.sql.ResultSetMetaData インターフェイス
+
java.sql.SQLWarning クラス
+
java.sql.SQLXMLインターフェイス
+
SQL型とjava.sql.Typesの対応
+
JDBC 2.0 の機能
+
java.sql.Connection インターフェイス: JDBC 2.0で利用可能なメソッド
+
java.sql.DatabaseMetaData インターフェイス: 利用可能なJDBC 2.0のメソッド
+
java.sql.PreparedStatementインターフェイス: JDBC2.0で提供されるメソッド
+
java.sql.ResultSetMetaData インターフェイス: JDBC 2.0で利用可能なメソッド
+
java.sql.Statement インターフェイス: 利用可能なJDBC 2.0のメソッド
+
+
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc77156.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc80004.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc80004.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc80004.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +java.sql.Connection インターフェイス: JDBC 2.0で利用可能なメソッド + + + + +

java.sql.Connection インターフェイス: JDBC 2.0で利用可能なメソッド

+ + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
表 1. Connecctionにて利用可能なJDBC 2.0のメソッド
返り値シグネチャ
StatementcreateStatement( int resultSetType, int resultSetConcurrency)
PreparedStatementprepareStatement(String sql, int resultSetType, int +resultSetConcurrency)
CallableStatementprepareCall(String sql, int resultSetType, int resultSetConcurrency
+
+ +

実装のための但し書き

+実装されている結果セットは、ResultSet.TYPE_FORWARD_ONLYとResultSet.TYPE_SCROLL_INSENSITIVEの二種類です。 +TYPE_SCROLL_SENSITIVEを要求した場合、DerbyはSQLWarningを発行して、TYPE_SCROLL_INSENSITIVEなResultSetを返します。 +

これ等のメソッドでは、ResultSet.CONCUR_READ_ONLYとResultSet.CONCUR_UPDATABLEの二種類の平行処理が実現されています。

+
+ +
+ +
+ +
関連概念
+
java.sqlにある、JDBCの主なクラス、 インターフェイス、メソッド
+
+
関連資料
+
java.sql.Driverインターフェイス
+
java.sql.DriverManager.getConnection メソッド
+
java.sql.Connection インターフェイス
+
java.sql.DatabaseMetaData インターフェイス
+
java.sql.Statementインターフェイス
+
java.sql.CallableStatement インターフェイス
+
java.sql.SQLException クラス
+
java.sql.PreparedStatementインターフェイス
+
java.sql.ResultSet インターフェイス
+
java.sql.ResultSetMetaData インターフェイス
+
java.sql.SQLWarning クラス
+
java.sql.SQLXMLインターフェイス
+
SQL型とjava.sql.Typesの対応
+
JDBC 2.0 の機能
+
java.sql.DatabaseMetaData インターフェイス: 利用可能なJDBC 2.0のメソッド
+
java.sql.PreparedStatementインターフェイス: JDBC2.0で提供されるメソッド
+
java.sql.ResultSet
+
java.sql.ResultSetMetaData インターフェイス: JDBC 2.0で利用可能なメソッド
+
java.sql.Statement インターフェイス: 利用可能なJDBC 2.0のメソッド
+
+
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc80004.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc87220.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc87220.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc87220.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +java.sql.BatchUpdateException クラス + + + + +

java.sql.BatchUpdateException クラス

+ +
+

バッチ更新にて問題が発生したとき挙がります。

+
+ +
+ +
+ +
関連概念
+
SQLの識別子
+
文
+
組込みシステム関数
+
JDBC リファレンス
+
+
関連資料
+
大文字小文字と特殊文字
+
SQL 節
+
SQL式
+
JOIN 演算
+
SQL 問い合わせ
+
組み込み関数
+
SQL予約語
+
DerbyのサポートするSQL-92の機能
+
Derbyのシステム表
+
Derbyの例外メッセージとSQL state
+
Connected Device ConfigurationおよびFoundation Profile向けのJDBCパッケージ(JSR169)
+
JDBC 3.0の機能
+
JDBC 4.0の機能
+
JDBCエスケープの構文
+
+
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc87220.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc88908.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc88908.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc88908.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,299 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +fnキーワードを使ったJDBCエスケープ構文 + + + + +

fnキーワードを使ったJDBCエスケープ構文

+ + +
+

JDBCエスケープ構文にてfnというキーワードを使うことで関数を指定できます。

+
+ +

構文

{fn 関数呼び出し}
+

ここで関数呼び出しは、以下に挙げるスカラー関数の何れかの名前です。

+
+
abs
+ +
数の絶対値を返す。
abs(数式)
+ +

JDBCエスケープ構文の{fn abs(数式)}は、組込み構文のABSOLUTE(数式)と同等です。 +より詳細な情報は、ABSとABSVAL関数を参照してください。

+
+ + +
acos
+ +
指定した数の逆余弦を返します。
acos(数)
+

JDBCエスケープ構文の{fn acos(数)}は、組込み構文のACOS(数)と同等です。より詳細な情報は、ACOSを参照してください。

+
+ + +
asin
+ +
指定した数の逆正弦を返します。
asin(数)
+

JDBCエスケープ構文の{fn asin(数)}は、組込み構文のASIN(数)と同等です。より詳細な情報は、ASINを参照してください。

+
+ + +
atan
+ +
指定した数の逆正接を返します。
atan(数)
+

The +JDBCエスケープ構文の{fn atan(数)}は、組込み構文のATAN(数)と同等です。より詳細な情報は、ATANを参照してください。

+
+ + +
ceiling
+ +
指定した数を切り上げて、指定した数以上の最小の数を返します。
ceiling(数)
+ +

JDBCエスケープ構文の{fn ceiling(数)}は、組込み構文のCEILING(数)と同等です。より詳細な情報はCEILおよびCEILING関数を参照してください。

+
+ + +
concat
+ +
連結した文字列を返します。
concat(文字式, 文字式)
+

最初の文字列に二つ目の文字列を連結した文字列が構成されます。もしどちらかの文字列が空なら、返り値はNULLとなります。JDBCエスケープ構文の{fn concat +(文字式, 文字式)は、組込み構文の{ 文字式 || 文字式 }と同等です。詳細は、Concatenationを参照してください。

+
+ + +
cos
+ +
指定した引数の余弦を返します。
cos(数)
+ +

JDBCエスケープ構文の{fn cos(数)}は、組込み構文のCOS(数)と同等です。詳細は、COS 関数を参照してください。

+
+ + +
degrees
+ +
指定した数をラジアンから度に変換します。
degrees(数)
+ +

JDBCエスケープ構文の{fn degrees(数)}は、組込み構文のDEGREES(数)と同等です。詳細はDEGREES 関数を参照してください。

+
+ + +
exp
+ +
eを指定した数で累乗した数を返します。
exp(数)
+ +

JDBCエスケープ構文の{fn exp(数)}は、組み込み構文のEXP(数)と同等です。詳細はEXP関数を参照してください。

+
+ + +
floor
+ +
指定した数を切り捨てて、指定した数以下の最大の数を返します。
floor(数)
+ +

JDBCエスケープ構文の{fn floor(数)}は、組込み構文のFLOOR(数)と同等です。 +詳細はFLOOR関数を参照してください。

+
+ + +
locate
+ +
二つ目の文字式のうちで、一つ目の文字式が見つかる位置を返します。 +開始位置が指定されない場合、二つ目の文字式の頭から、一致する位置を見つけようとします。
locate(文字式,文字式 [, 開始位置] )
+ +

JDBCエスケープ構文の{fn locate(文字式,文字式 [, 開始位置] +)}は、組込み構文のLOCATE(CharacterExpression, +CharacterExpression [, StartPosition] )と等価です。詳細はLOCATE関数を参照してください。

+
+ + +
log
+ +
指定した数の自然対数(底をeとします。)を返します。
log(数) 
+ +

JDBCエスケープ構文の{fn log(数)}は、組込み構文のLOG(数)と等価です。詳細はLNあるいはLOG関数を参照してください。

+
+ + +
log10
+ +
指定した数の10を底とする対数を返します。
log10(数)
+

JDBCエスケープ構文の{fn log10(数)}は、組込み構文の、LOG10(数)と等価です。詳細はLOG10 関数を参照してください。

+
+ + +
mod
+ +
一つ目の引数を二つ目の引数で割った余り(剰余)を返します。 +一つ目の引数が負であった場合のみ、結果は負となります。
mod(整数, 整数)
+ +

詳細はMOD関数を参照してください。

+
+ + +
pi
+ +
piの最近似値を返します。
pi()
+ +

JDBCエスケープ構文の{fn pi()}は、組込み構文のPI()と等価です。詳細はPI 関数を参照してください。

+
+ + +
radians
+ +
指定した数を度からラジアンに変換します。
radians(数)
+ +

JDBCエスケープ構文の{fn radians(数)}は、組込み構文のRADIANS(数)と等価です。詳細はRADIANS 関数を参照してください。

+
+ + +
sin
+ +
指定した数の正弦を返します。
sin(数)
+ +

JDBCエスケープ構文の{fn sin(数)}は、組込み構文のSIN(数)と等価です。詳細はSINを参照してください。

+
+ + +
sqrt
+ +
浮動小数点数の平方根を返します。
sqrt(浮動小数点数式)
+

+JDBCエスケープ構文の{fn sqrt (浮動小数点数式)}は、組込み構文のSQRT(浮動小数点数式)と等価です。詳細はSQRT関数を参照してください。

+
+ + +
substring
+ +
文字式の開始位置から始まる部分文字列を構成して返します。 +文字式の最初の文字は1と数えます。 +
substring(文字式, 開始位置, 長さ)
+
+ + +
tan
+ +
引数の正接を返します。
tan(数)
+ +

JDBCエスケープ構文の{fn tan(数)}は、組込み構文のTAN(数)と等価です。詳細はTANを参照してください。

+
+ + +
TIMESTAMPADD
+ +
TIMESTAMPADD関数を使って、タイムスタンプに時間を足すことができます。関数はタイムスタンプに整数を時間の種類に沿って処理して、加算した値を新しいタイムスタンプとして返します。負の整数を与えることで減算もできます。 +

TIMESTAMPADDはJDBCエスケープの関数で、JDBCエスケープ関数の構文でのみ利用可能です。

+ +
TIMESTAMPADD( 時間の種類, 整数式, タイムスタンプ式 )
+ +

日付や時刻にTIMESTAMPADDを実行するには、日付や時刻をタイムスタンプに変換する必要があります。日付は時刻のフィールドに00:00:00.0を与えることでタイムスタンプに変換できます。時刻は現在日付を日付のフィールドに与えることで、タイムスタンプに変換できます。

+ +

WHERE節にて、タイムスタンプを計算する関数に日時の列を置くべきではありません。なぜならオプティマイザが、その列への索引を利用しなくなるからです。

+
+ + +
TIMESTAMPDIFF
+ +
TIMESTAMPDIFF関数により指定した時間の種類によるタイムスタンプの間の差を計算できます。例えば、関数により二つのタイムスタンプ間の分数を返すことができます。 +

TIMESTAMPDIFFはJDBCエスケープの関数で、JDBCエスケープ関数の構文でのみ利用できます。

+ +
TIMESTAMPDIFF( 時間の種類, タイムスタンプ式1, タイムスタンプ式2 )
+ +

日付や時刻にTIMESTAMPDIFFを実行するには、日付や時刻をタイムスタンプに変換する必要があります。日付は時刻のフィールドに00:00:00.0を与えることでタイムスタンプに変換できます。時刻は現在日付を日付のフィールドに与えることで、タイムスタンプに変換できます。

+ +

WHERE節にて、タイムスタンプを計算する関数に日時の列を置くべきではありません。なぜならオプティマイザが、その列への索引を利用しなくなるからです。

+
+ +
+
+ +

TIMESTAMPADD および TIMESTAMPDIFFに指定できる時間の種類

+TIMESTAMPADDおよびTIMESTAMPDIFFは、タイムスタンプへの算術演算を行うために使われます。これ等の関数は以下にあげる時間の種類を演算処理で利用できます。 +
+ +

エスケープ関数のTIMESTAMPADDとTIMESTAMPDIFFを利用する例

+

次の書き方で、現在より一ヵ月後の値を返します。

+
{fn TIMESTAMPADD( SQL_TSI_MONTH, 1, CURRENT_TIMESTAMP)}
+ +

次の書き方で、現在と2008年1月1日の間が何週間かを返します。

+
{fn TIMESTAMPDIFF(SQL_TSI_WEEK, CURRENT_TIMESTAMP, 
+  timestamp('2008-01-01-12.00.00.000000'))}
+
+ +
+ +
+ +
関連資料
+
呼び出し文のJDBCエスケープキーワード
+
JDBCエスケープ構文
+
LIKE節のJDBCエスケープ構文
+
外部結合のJDBCエスケープ構文
+
時刻書式のJDBCエスケープ構文
+
日付書式のJDBCエスケープ構文
+
タイムスタンプ書式のJDBCエスケープ構文
+
+
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc88908.html ------------------------------------------------------------------------------ svn:eol-style = native Added: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc96386.html ============================================================================== --- websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc96386.html (added) +++ websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc96386.html Wed Mar 13 13:54:17 2013 @@ -0,0 +1,271 @@ + + + + + + + + + + + + + + + + + + + + + +java.sql.Blobインターフェイスとjava.sql.Clobインターフェイスの対応 + + + + +

java.sql.Blobインターフェイスとjava.sql.Clobインターフェイスの対応

+ + +
+

JDBC 2.0ではjava.sql.BlobはSQLのBLOB(binary large object)型に対応して、java.sql.ClobはSQLのCLOB(character large object)型に対応します。

+
+ +

java.sql.Blobとjava.sql.Clobは情報(large object)全体ではなく、それへの論理的なポインタを表します。Derbyでは一時に唯一つのデータページだけがメモリ上で処理されます。BLOBの情報の最初の数バイトを読み書きするのに、LOB全体が処理される必要はありません。

+
+ +
現在のDerbyに組み込まれた型には、BLOBとCLOBが用意されています。 +またDerbyはこれらのデータ型に対して以下の機能を提供します。 + +
+
+ + +
java.sql.Blobとjava.sql.Clobの機能を使うには以下のようにします。 +
    +
  • 情報をSQLのBLOB型で記録します。LONG VARCHAR FOR BIT DATA、BINARYおよびVARCHAR FOR BIT DATA型でも可能です。
  • + +
  • 情報をSQLのCLOB型で記録します。LONG VARCHAR、CHARおよびVARCHAR型でも可能です。
  • + +
  • java.sql.ResultSetインターフェイスのgetBlobあるいはgetClobメソッドを使って、参照される情報を扱うBLOBやCLOBを取得します。
  • + +
  • LOBの列に対して静的なメソッドを呼ぶことはできません。
  • + +
+
+
+ +

加えて文字列とBLOBの間で型変換を行うことは推奨されません。なぜなら型変換はプラットフォーム・データベースに依存するからです。

+
+ +

Derbyはユニコード文字列(1文字2バイト)を使いますが、他のデータベース製品はASCII文字(1文字あたり1バイト)を使うかもしれません。使われる文字コードの種類によっては一文字が数バイトを必要とすることも考えられます。文字列を記録する為に、Derbyでは他より大きなBLOBの型を必要とする場合があります。 +文字列を記録する場合はCLOB型を利用するべきです。

+
+ +
BLOB、CLOB、(LOB型)の制約
    +
  • LOB型は等号(=)や不等号(!=、 <>. で比較できません。
  • + +
  • LOB型で順序付けることはできません。また<、 <=、 >、 >=による比較も不可能です。
  • + +
  • LOB型への索引やLOB型の主キー列は不可能です。
  • + +
  • LOB型について、DISTINCT、GROUP BY、ORDER BY節は利用できません。
  • + +
  • 他の基本型と違い、LOB型では暗黙の型変換を行えません。
  • + +
+
+
+ +

Derbyでは、CallableStatementのsetおよびgetメソッドを除いた、以下のJDBC 2.0のインターフェイスのメソッドが実装されています。

+
+ +

推奨事項: java.sql.Blobとjava.sql.Clobの生存期間はトランザクションがコミットされるとき終了するので、java.sql.Blobおよびjava.sql.Clobを利用するときは自動コミットを切って下さい。

+
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
表 1. 提供されるJDBC 2.0 java.sql.Blobのメソッド
返り値シグネチャ実装の覚書
InputStreamgetBinaryStream() 
byte[]getBytes(long pos, int length)pos < 1だったり、posがlengthより大きかったり、length <= 0であった場合、例外が発生します。
longlength() 
longposition(byte[] pattern, long start)pattern == nullであったり、start < +1であったり、patternの配列長が0であった場合、例外が発生します。
longposition(Blob pattern, long start)pattern == nullだったり、start < +1だったり、patternの長さが0であったり、patternの最初の数バイトを読むとき例外が起きると、例外が発生します。
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
表 2. 提供されるJDBC 2.0 java.sql.Clob のメソッド
返り値シグネチャ実装上の覚書
InputStreamgetAsciiStream() 
ReadergetCharacterStream() 
StringgetSubString(long pos, int length)pos < 1だったり、posが Clobの長さより大きかったり、length <= 0であった場合、例外が発生します。
longlength() 
longposition(Clob searchstr, long start) searchStr == nullだったりstart < +1だったり、searchStr の長さが0だったり、searchStrの最初の数バイトを読むとき例外が起きると、例外が発生します。
longposition(String searchstr, long start) searchStr == nullだったり、start < +1だったり、patternが空文字列であった場合、例外が発生します。
+
+
+
+ +
+ +
+ + + +
+ + + Propchange: websites/production/db/content/derby/docs/10.4/ja_JP/ref/rrefjdbc96386.html ------------------------------------------------------------------------------ svn:eol-style = native