Interstage Application Server 使用上の注意 - Solaris (TM) Operating Environment -
|
目次
|
3.9.3 Interstage JDBC Driverを使用する場合の注意事項
1) データ型について
データ型のサポート範囲は、以下のとおりです。
- サポートしているデータ型
- 整数型(int、smallint)
- 概数型(float、real)
- 文字列型(char、varchar、text)
- バイナリ型(binary、varbinary、image)
- money 型とsmallmoney 型
- decimal 型とnumeric 型
- datetime 型とsmalldatetime 型
- その他のデータ型(timestamp)
※SQL Serverのtimestamp型は取り出し専用の型であるため、BMPで使用することができます。
- 未サポートのデータ型
- 整数型(tinyint、bigint)
- bit型(bit)
- その他のデータ型(cursor、uniqueidentifier、sql_variant、table)
- Unicode 文字型(nchar、nvarchar、ntext、sysname)
- ユーザ定義型
2) datetime型およびsmalldatetime型のフォーマットについて
datetime型およびsmalldatetime型カラムのデータを更新する場合、以下のフォーマットでデータを指定してください。
- 記述形式
YYYY-MM-DD hh:mm:ss
- YYYY = 年
- MM = 月
- DD = 日
- hh = 時
- mm = 分
- ss = 秒
注)ミリ秒は未サポートです。
- 例
1984-09-22 14:23:40
3) ストアド プロシージャについて
ストアド プロシージャは使用できません。
4) datetime型使用時のAPIについて
datetime型に対して以下のAPIを使用する場合、smalldatetime型の範囲内の値のみ有効になります。
- PreparedStatement.setTimestamp(int parameterIndex, Timestamp x)
5)未サポートAPIについて
JDBC APIの標準仕様の中で、以下のAPIは未サポートです。
- Connectionクラス
- nativeSQL(String sql)
- setCatalog(String catalog)
- getCatalog()
- DatabaseMetaDataクラス
- getCatalogTerm()
- isCatalogAtStart()
- supportsCatalogsInProcedureCalls()
- supportsCatalogsInTableDefinitions()
- getMaxCatalogNameLength()
- getCatalogSeparator()
- supportsCatalogsInDataManipulation()
- supportsCatalogsInIndexDefinitions()
- supportsCatalogsInPrivilegeDefinitions()
- getTableTypes()
- getCatalogs()
- getColumnPrivileges(String catalog, String schema, String table,String columnNamePattern)
- getVersionColumns(String catalog, String schema, String table)
- getCrossReference(String primaryCatalog, String primarySchema,String primaryTable, String foreignCatalog,String foreignSchema, String foreignTable)
- getTablePrivileges(String catalog, String schemaPattern,String tableNamePattern)
- getBestRowIdentifier(String catalog, String schema,String table, int scope, boolean nullable)
- getImportedKeys(String catalog, String schema, String table)
- getExportedKeys(String catalog, String schema, String table)
- PreparedStatementクラス
- setBoolean(int parameterIndex, boolean x)
- setByte(int parameterIndex, byte x)
- setLong(int parameterIndex, long x)
- execute()
- setObject(int parameterIndex, Object x)
- setObject(int parameterIndex, Object x, int targetSqlType)
- setObject(int parameterIndex, Object x, int targetSqlType, int scale)
- setBigDecimal(int parameterIndex, BigDecimal x)
... カラムのデータ型が概数型(real型、float型)の場合
- setTimestamp(int parameterIndex, Timestamp x)
... カラムのデータ型が文字列型(char型、varchar型)の場合
- setString(int parameterIndex, String x)
... カラムのデータ型がdatetime型およびsmalldatetime型の場合
- ResultSetMetaDataクラス
- getCatalogName(int column)
- getColumnLabel(int column)
- Statementクラス
- setEscapeProcessing(boolean enable )
- getQueryTimeout()
- setQueryTimeout(int seconds)
- cancel()
- getMoreResults()
- getResultSet()
- getUpdateCount()
6) text型、および、image型を含む表から、行を取り出す場合について
BMPで、text型、および、image型を含む表から、行を取り出す場合、text型の列、および、image型の列は選択リストの最後の位置になるように指定してください。
- 例1: text型および、image型の行は、COL3の位置になるように指定してください。
SELECT COL1, COL2, COL3 FROM SCM.TBL WHERE COL1=?
- 例2:text型および、image型の行を複数扱う場合、COL2とCOL3の位置になるように指定してください。
SELECT COL1, COL2, COL3 FROM SCM.TBL WHERE COL1=?
CMPで、text型および、image型を含む表を操作する場合、CMFマッピング定義の最後にtext型および、image型の列を指定してください。
All Rights Reserved, Copyright(C) 富士通株式会社 2005