Hitachi

Hitachi Advanced Data Binder AP開発ガイド


15.6.2 HADB ODBCドライバをODBC2.xアプリケーションで使用する場合の注意事項

環境ハンドルのSQL_ATTR_ODBC_VERSION属性にSQL_OV_ODBC2を指定した場合,ここで説明する項目については,HADB ODBCドライバはODBC2.x規格に従って動作します。

〈この項の構成〉

(1) SQLSTATEについて

オープングループおよびISOの規格に合わせて,ODBC3.xで幾つかのSQLSTATEが変更されています。HADB ODBCドライバは,次のマッピング表に従ってODBC2.xのSQLSTATEを返却します。SQLSTATEについては,マニュアルHADB メッセージSQLSTATEの一覧を参照してください。

表15‒6 SQLSTATEのマッピング表

項番

ODBC3.x

ODBC2.x

1

07005

24000

2

07009

S1002

3

S1093

4

22007

22008

5

22018

22005

6

HY001

S1001

7

HY003

S1003

8

HY004

S1004

9

HY007

S1010

10

HY009

S1009

11

HY010

S1010

12

HY011

S1011

13

HY024

S1009

14

HY090

S1090

15

HY091

S1091

16

HY092

S1092

17

HY096

S1096

18

HY100

S1100

19

HY104

S1104

20

HY105

S1105

21

HYC00

S1C00

注※

SQLSTATE07009の場合,1対1のマッピングになりません。マッピングは次の表に従ってください。

表15‒7 SQLSTATE 07009のマッピング

項番

SQLSTATE 07009を返却する関数

SQL_OV_ODBC2指定時のSQLSTATE 07009のマッピング先のSQLSTATE

1

SQLBindParameter

S1093

2

SQLColAttribute

S1002

3

SQLDescribeCol

07009

4

SQLDescribeParam

S1093

5

SQLFetch

S1002

6

SQLGetData

S1002

7

SQLGetDescField

07009

8

SQLGetDescRec

07009

9

SQLSetDescRec

07009

10

SQLSetDescField

07009

(2) SQL_NO_DATAの戻り値について

次のどれかのODBC関数を呼び出して,DELETE文またはUPDATE文を実行した際に,対象となる行がないときは,SQL_SUCCESSが返却されます。SQL_NO_DATAは返却されません。

(3) SQLGetInfoの返却値について

環境ハンドルのSQL_ATTR_ODBC_VERSIONの指定値によって,SQL_ALTER_TABLEへの返却値が次のように異なります。