TimesTenでのODBC 2.5のサポート
この項では、TimesTenでの2.5のサポートについて、次の内容を示します。
TimesTenでのODBC 2.5の使用
ドライバ・マネージャを使用しないODBC 2.5アプリケーションは、引き続きSQLAllocEnv
へのコールを介してTimesTen ODBCドライバと連動します。
ヒント:
TimesTenリリース22.1はメジャー・リリースであるため、既存のODBCアプリケーションを再コンパイルして再リンクする必要があります。「以前のバージョンのTimesTenとのODBC APIの非互換性」も参照してください。
また、静的ではなく動的にアプリケーションをリンクすることをお薦めします。
ODBC 2.5関数のサポート
TimesTenでは、いくつかのODBC 2.5関数がサポートされています。
ノート:
-
TimesTen ODBCドライバでは、表10-11に示すように、汎用ドライバ・マネージャを使用しないアプリケーション用にワイド・キャラクタ(W)関数バージョンがサポートされています。
-
ODBC 2.5では、TimesTenによって、ODBC 2.0ハンドル・タイプ(
HDBC
やHENV
など)に加え、一部のODBC 3.0ハンドル・タイプ(SQLHDBC
やSQLHENV
など)がサポートされています。TimesTenでは、ODBC 3.0ハンドル・タイプの使用をお薦めします。ODBC 2.0のドキュメントに記載されているFAR
修飾子は必要ないことにも注意してください。
表10-11 サポートされているODBC 2.5関数
関数 | ノート |
---|---|
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
「SQLBindParameter関数」を参照してください。 |
|
シグナル・ハンドラから |
|
「ODBC 2.5のSQLColAttributesでの列記述子サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 |
|
コールは「driver not capable」を返します。 |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
W関数のTimesTen名に注意してください。 |
|
ドライバ・マネージャを使用しているプログラムでのみ使用できます。 |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
ドライバ・マネージャを使用しているプログラムでのみ使用できます。 |
|
ネイティブ・エラー・コードはTimesTenのエラーです。次のようなエラーが発生する場合があります。「Execution at Oracle failed.Oracle error code
|
|
|
|
TimesTenでは、非同期式の文の実行はサポートしていません。(この章で後述するように、TimesTenでは |
|
返す行がなくなると、リターン・コードが
|
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
「ODBC 2.5のSQLSetConnectOptionおよびSQLGetConnectOptionでのオプション・サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 TimesTenドライバ・マネージャ(TTDM)のサポートが追加されました。これについては、「ODBC 3.5のSQLSetConnectAttrおよびSQLGetConnectAttrでの属性サポート」に記載されています。 |
|
カーソル名の設定または取得はできますが、参照はできません(位置を指定した更新または削除を行う |
|
「Avoid SQLGetData」を参照してください。 |
|
ノートなし |
|
「ODBC 2.5のSQLGetInfoでの情報型サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 |
|
「ODBC 2.5のSQLSetStmtOptionおよびSQLGetStmtOptionでのオプション・サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
ノートなし |
|
「変更されたODBC 2.5関数シグネチャ」を参照してください。 |
|
ノートなし |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
ノートなし |
|
標準の機能に加えて、これはTimesTenキャッシュ・グループでも使用されます。「キャッシュ・グループに関する情報の取得」を参照してください。 |
|
次の項にある「ODBC 2.5のSQLSetConnectOptionおよびSQLGetConnectOptionでのオプション・サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 |
|
カーソル名の設定または取得はできますが、参照はできません(位置を指定した更新または削除を行う |
|
これは、ODBC 2.0では |
|
コールは「driver not capable」を返します。 |
|
「ODBC 2.5のSQLSetStmtOptionおよびSQLGetStmtOptionでのオプション・サポート」を参照してください。 「変更されたODBC 2.5関数シグネチャ」も参照してください。 |
|
TimesTenでは、 カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
コールは「driver not capable」を返します。 |
|
カタログ関数の場合、TimesTenは修飾子として空の文字列または |
|
ノートなし |
ODBC 2.5のSQLSetConnectOptionおよびSQLGetConnectOptionでのオプション・サポート
ODBC 2.5のSQLSetConnectOption
関数およびSQLGetConnectOption
関数では、初期接続後に接続オプションを設定することや、これらの設定を取得することができます。一部のオプションは、接続プロセスの間に設定できる接続属性と対応しています。
表10-12では、ODBC 2.5のSQLSetConnectOption
関数とSQLGetConnectOption
関数について、TimesTenでサポートされている標準オプションを示します。
TimesTen固有の接続オプションについては、表10-4を参照してください。これらのオプションは、ODBC 2.5とODBC 3.5の両方でサポートされています。
「ODBC 2.5のSQLSetStmtOptionおよびSQLGetStmtOptionでのオプション・サポート」も参照してください。これらのオプションは、SQLSetConnectOption
を使用して設定することもできますが、その場合、設定した値は接続時のすべての文に対するデフォルトになります。
ノート:
-
SQLSetConnectOption
またはSQLSetStmtOption
を使用したオプション設定は、対応する接続属性の設定よりも優先されます(該当する場合)。 -
ここに記載されている説明は、
SQLSetConnectOptionW
およびSQLGetConnectOptionW
にも適用されます。 -
TimesTen接続属性がODBC接続オプションと同等であると記載されている場合は、『Oracle TimesTen In-Memory Databaseリファレンス』の接続属性を参照してください。
表10-12 標準の接続オプション(ODBC 2.5)
オプション | ノート |
---|---|
|
ノートなし |
|
「変更されたODBC 2.5関数シグネチャ」を参照してください(そこで |
|
ノートなし |
|
ドライバ・マネージャを使用しているプログラムでサポートされています |
|
ドライバ・マネージャを使用しているプログラムでサポートされています |
|
ドライバ・マネージャを使用しているプログラムでサポートされています |
プリフェッチと分離レベルとの関係については、「複数のデータ行のプリフェッチ」を参照してください。また、『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』の分離およびロックによる並行性制御、および『Oracle TimesTen In-Memory Databaseリファレンス』の分離を参照してください。 |
ODBC 2.5のSQLSetStmtOptionおよびSQLGetStmtOptionでのオプション・サポート
ODBC 2.5のSQLSetStmtOption
関数およびSQLGetStmtOption
関数では、文のオプション設定を指定または取得できます。
表10-13に、TimesTenでサポートされているODBC 2.5 SQLSetStmtOption
関数およびSQLGetStmtOption
関数の標準のオプションを、サポートに関するノートとともに示します。
TimesTen固有の文オプションについては、表10-6を参照してください。これらのオプションは、ODBC 2.5とODBC 3.5の両方でサポートされています。
接続に関連付けられているすべての文のオプションのデフォルト値を設定するには、SQLSetConnectOption
を使用します。
ノート:
SQLSetConnectOption
またはSQLSetStmtOption
を使用したオプション設定は、対応する接続属性の設定よりも優先されます(該当する場合)。
表10-13 標準の文オプション(ODBC 2.5)
オプション | ノート |
---|---|
|
「変更されたODBC 2.5関数シグネチャ」を参照してください。 |
|
ノートなし |
|
「SQL文のタイムアウト期間の設定」を参照してください。 |
ノート:
SQL_MAX_LENGTH
オプションは設定できますが、指定した値はすべて0で上書きされます(すべての使用可能なデータが返されます)。
ODBC 2.5のSQLColAttributesでの列記述子サポート
SQLColAttributes
関数は、結果セット内の列の記述子情報を返します。
この関数および標準的な列記述子の詳細は、ODBC APIのリファレンス・マニュアルを参照してください。
表10-14に、TimesTen固有の列記述子を示します。
表10-14 TimesTenの列記述子: SQLColAttributes
記述子 | コメント/説明 |
---|---|
|
インライン・データを備えた列の場合は |
|
キャラクタ型列において、バイト長セマンティクスを備えた列の場合は"BYTE"を、キャラクタ長セマンティクスを備えた列の場合は"CHAR"を返します。キャラクタ以外の列の場合は、""を返します。この情報は、 この情報は、データ長がバイト単位またはキャラクタ単位のいずれで測定されるかを示しています。TimesTenにおける長さセマンティクスは、Oracle Databaseの場合と同じです。『Oracle Databaseグローバリゼーション・サポート・ガイド』の長さセマンティクスを参照してください。 |
ODBC 2.5のSQLGetInfoでの情報型サポート
ODBC関数SQLGetInfoの情報型について、TimesTenのODBC 2.5実装でのサポート状況を示します。
表10-15に、ODBC 1.0および2.0で導入された標準の情報型と、TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型(表のとおり)がTimesTenでどのようにサポートされているかを示します。TimesTen固有の正しい戻り値に留意してください。
ODBC 3.5とODBC 2.5の両方でサポートされている、TimesTen固有の情報型については、「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。
表10-15 TimesTenでの標準の情報型のサポート: SQLGetInfo (ODBC 2.5)
情報型 | 留意事項とTimesTenから返される正しい値 |
---|---|
|
"Y" |
|
"Y" |
|
|
|
0: ヒープから割り当てられ、同時実行性に対する制限はありません。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
|
|
0: ブックマークは、いずれの操作でも持続しません。 |
|
"Y" |
|
|
|
|
|
0: |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
|
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
|
|
|
|
"": 空の文字列。 |
|
"N" |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
|
|
ドライバ接続ハンドルへのポインタ。 |
|
ドライバ環境ハンドルへのポインタ。 |
|
ノート: ドライバ・マネージャを使用すると、TimesTenライブラリへのポインタが返されます。 |
|
ドライバ文ハンドルへのポインタ。 |
|
ご使用のプラットフォームのTimesTen ODBCドライバ・ライブラリのファイル名。 |
|
ODBC 3.5の場合は3.51、ODBC 2.5の場合は2.50です。 |
|
TimesTenのバージョンを示す文字列。たとえば、「22.01.0001.0001 Oracle TimesTen version 22.1.1.1.0」です。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
"Y" |
|
|
|
|
|
|
|
SELECT dept, MAX(salary) FROM employee GROUP BY dept, age; |
|
|
|
""": 1つの引用符(引用符文字)を含む文字列。 |
|
「ODBC 2.5のTimesTen SQLキーワード」を参照してください。 |
|
"Y" |
|
16384 |
|
|
別名 |
|
別名 |
|
|
|
別名 |
|
別名 |
|
別名 |
|
別名 |
18 |
|
4194304 |
|
|
|
|
|
0: 特定の最大長はありません。 |
|
4194304 |
別名 |
|
別名 |
|
別名 |
|
別名 |
|
|
"N" |
|
"Y" |
|
"N" |
|
|
|
|
|
|
|
"N" |
|
N/A。ドライバ・マネージャによって実装されます。 |
別名 |
|
|
"Y" |
|
"Y" |
|
"owner" |
|
|
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
0: スクロール可能カーソルはサポートされていません。 |
|
"procedure" |
|
"Y" |
|
0: 修飾子としてのカタログ名はサポートされていません。 |
|
|
|
"data store" |
|
0: カタログはサポートされていません。 |
|
|
|
"N" |
|
|
|
"\\" |
|
"": 空の文字列。 |
|
#@$: 特殊文字を示す文字列。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
TimesTen ODBC 2.5実装でサポートされているODBC 3.0情報型。「ODBC 3.5のSQLGetInfoでの情報型サポート」を参照してください。 |
|
|
|
|
|
|
|
"table" |
|
|
|
|
|
|
別名 |
|
別名 |
|
|
|
|
実行時に、ユーザー名が含まれている文字列を返します。 |
ノート:
InfoType
値としてSQL_DRIVER_HDBC
、SQL_DRIVER_HENV
またはSQL_DRIVER_HSTMT
を使用する場合は、「変更されたODBC 2.5関数シグネチャ」参照してください。
ODBC 2.5のTimesTen SQLキーワード
この項では、SQLGetInfo
コールでSQL_KEYWORDS
に対して返されるTimesTen SQLキーワードを示します。
TimesTen予約語のリストとは異なります。『Oracle TimesTen In-Memory Database SQLリファレンス』の予約語を参照してください。
ABS、ACCOUNT、ACTIVE、ADDMONTHS、ADMIN、AFFINITY、AGENT、AGING、ALLOW、ASCIISTR、ASYNCHRONOUS、AUTHID、AUTOREFRESH、AWT、BATCH、BIG、BIGINT、BINARY、BINARY_DOUBLE、BINARY_DOUBLE_INFINITY、BINARY_DOUBLE_NAN、BINARY_FLOAT、BINARY_FLOAT_INFINITY、BINARY_FLOAT_NAN、BITAND、BITMAP、BITNOT、BITOR、BITXOR、BLOB、BODY、BYTE、BYTES、CACHE、CACHEONLY、CACHE_MANAGER、CALL、CHECKING、CHR、CLOB、COLUMNAR、COMMITTED、COMPILE、COMPLETE、COMPRESS、CONCAT、CONFLICT、CONFLICTS、CS、CUBE、CURRENT_SCHEMA、CURRVAL、CYCLE、DATASTORE、DATASTORE_OWNER、DAYS、DEBUG、DECODE、DEFINED、DEFINER、DEFINITION、DELETE_FT、DESTROY、DICTIONARY、DIRECTORY、DISABLE、DISTRIBUTE、DUPLICATE、DURABLE、DURATION、DYNAMIC、ELEMENT、ENABLE、ENCRYPTED、ENDSEQ、EVERY、EXACT、EXCLUDE、EXIT、EXPIRE、EXTERNALLY、FACTOR、FAILTHRESHOLD、FAST、FIRST_VALUE、FLUSH、FOLLOWING、FORCE、FORMAT、FUNCTION、GETDATE、GRID、GROUPING、GROUPING_ID、GROUP_ID、HASH、HEARTBEAT、HIERARCHY、HOURS、ID、IDENTIFIED、IGNORE、INCREMENT、INCREMENTAL、INFINITE、INLINE、INSERTONLY、INSTANCE、INSTR、INSTR4、INSTRB、LAST_VALUE、LATENCY、LENGTH、LENGTH4、LENGTHB、LIBRARY、LIFETIME、LIMIT、LIMIT_FT、LOAD、LOAD_FT、LOCK、LOG、LONG、LRU、MASTER、MASTERIP、MATCHED、MATERIALIZED、MAXVALUE、MAXVALUES、MERGE、MIGRATORY、MILLISECOND、MILLISECONDS、MINUS、MINUTES、MINVALUE、MOD、MODE、MODIFY、MULTI、NAME、NAN、NCHAR_CS、NCHR、NCLOB、NEXTVAL、NLSSORT、NOBATCH、NOCACHE、NOCYCLE、NOMAXVALUE、NOMINVALUE、NONDURABLE、NOORDER、NOWAIT、NULLS、NUMBER、NUMTODSINTERVAL、NUMTOYMINTERVAL、NVARCHAR、NVARCHAR2、NVL、OFF、OPTIMIZED、ORACLE、ORA_CHAR、ORA_DATE、ORA_FLOAT、ORA_NCHAR、ORA_NVARCHAR2、ORA_SYSDATE、ORA_TIMESTAMP、ORA_VARCHAR2、OUT、OVER、PACKAGE、PAGES、PAIR、PARALLEL、PARTITION、PASSWORD、PAUSED、PLSQL_WARNINGS、PORT、PRECEDING、PRIORITY、PRIVATE、PROPAGATE、PROPAGATOR、PUBLICREAD、PUBLICROW、QUIT、RANGE、RC、READERS、READONLY、RECEIPT、REFERENCE、REFRESH、REFRESH_FT、RELAXED、RELEASE、RENAME、REPLACE、REPLICATION、REPORT、REPORTING、REQUEST、RESUME、RETURN、RETURNING、REUSE、RLE、ROLLUP、ROUTE、ROW、ROWID、ROWIDONLY、ROWNUM、RR、RTRIM、RU、SECONDS、SELF、SEQBATCH、SEQCACHE、SEQUENCE、SERVICES、SETS、SETTINGS、SPECIFICATION、SQL_TSI_DAY、SQL_TSI_FRAC_SECOND、SQL_TSI_HOUR、SQL_TSI_MINUTE、SQL_TSI_MONTH、SQL_TSI_QUARTER、SQL_TSI_SECOND、SQL_TSI_WEEK、SQL_TSI_YEAR、STANDARD、STANDBY、START、STARTSEQ、STATE、STATIC、STOPPED、STORE、SUBSCRIBER、SUBSCRIBERIP、SUBSTR、SUBSTR4、SUBSTRB、SUSPEND、SYNCHRONOUS、SYNONYM、SYSDATE、SYSDBA、SYSTEM、TAG、TIMEOUT、TIMESTAMPADD、TIMESTAMPDIFF、TINYINT、TO_BLOB、TO_CHAR、TO_CLOB、TO_DATE、TO_LOB、TO_NCLOB、TO_NUMBER、TO_TIMESTAMP、TRAFFIC、TRANSMIT、TREE、TRUNC、TRUNCATE、TRUSTED、TT_BIGINT、TT_BINARY、TT_CHAR、TT_DATE、TT_DECIMAL、TT_HASH、TT_INT、TT_INTEGER、TT_INTERVAL、TT_NCHAR、TT_NVARCHAR、TT_SMALLINT、TT_SYSDATE、TT_TIME、TT_TIMESTAMP、TT_TINYINT、TT_VARBINARY、TT_VARCHAR、TWOSAFE、UID、UNBOUNDED、UNISTR、UNLOAD、UNLOCK、USE、USERMANAGED、VARBINARY、VARCHAR2、WAIT、WRAPPED、WRITETHROUGH、XLA、XML、XYZZY