プライマリ・コンテンツに移動
Pro*C/C++プログラマーズ・ガイド
12c リリース1(12.1)
B71397-03
目次へ移動
目次
索引へ移動
索引

前
次

SQLLIBパブリック関数の新しい名前

表5-4は、SQLLIB関数名を示しています。これらのSQLLIB関数は、スレッド・アプリケーションでも非スレッド・アプリケーションでも使用できます。たとえば、従来は、sqlglm()は、この関数の非スレッド・バージョンまたはデフォルト・コンテキスト・バージョンで、sqlglmt()は、スレッド・バージョンまたは非デフォルト・コンテキスト・バージョンで、最初の引数としてコンテキストを指定していました。sqlglm()およびsqlglmt()の名前は、引き続き使用可能です。新しい関数SQLErrorGetText()には、sqlglmt()と同じ引数が必要です。非スレッドまたはデフォルト・コンテキスト・アプリケーションでは、定義した定数SQL_SINGLE_RCTXをコンテキストとして渡してください。

標準SQLLIBパブリック関数はいずれもスレッド・セーフであり、ランタイム・コンテキストを最初の引数として受け入れます。たとえば、SQLErrorGetText()の構文は次のとおりです。

void SQLErrorGetText(dvoid *context,  char   *message_buffer, 
            size_t *buffer_size,
            size_t *message_length);

つまり、古い関数名は既存のアプリケーションでそのまま使用できます。新しく作成するアプリケーションでは、新しい関数名を使用できます。

表5-4は、すべてのSQLLIBパブリック関数とそれに対応する構文を示しています。非スレッドまたはデフォルト・コンテキストの使用方法に関する相互参照も用意されているため、より詳細な説明が必要な場合に参照してください。

表5-4 SQLLIBパブリック関数 - 新しい名前

古い名前 新しい関数プロトタイプ 相互参照

sqlaldt()

struct SQLDA *SQLSQLDAAlloc(dvoid *context,
unsigned int     maximum_variables,
unsigned int     maximum_name_length,
unsigned int     maximum_ind_name_length);

SQLDAの割当ても参照してください。

sqlcdat()

void SQLCDAFromResultSetCursor(dvoid *context,
Cda_Def *cda,
void    *cursor,
sword   *return_value);

OCIでのカーソル変数の使用(リリース7のみ)も参照してください。

sqlclut()

void SQLSQLDAFree(dvoid  *context, 
struct SQLDA             *descriptor_name);

記憶域の割当て解除も参照してください。

sqlcurt()

void SQLCDAToResultSetCursor(dvoid  *context,
void    *cursor, 
Cda_Def *cda, 
sword   *return_value)

OCIでのカーソル変数の使用(リリース7のみ)も参照してください。

sqlglmt()

void SQLErrorGetText(dvoid  *context,
unsigned char *message_buffer, 
size_t  *buffer_size,
size_t  *message_length);

エラー・メッセージの全文の取得についても参照してください。

sqlglst()

void SQLStmtGetText(dvoid   *context, 
char    *statement_buffer, 
size_t  *statement_length, 
size_t  *sqlfc);

SQL文のテキスト取得についても参照してください。

sqlld2t()

void SQLLDAGetName(dvoid   *context, 
Lda_Def *lda,
text    *cname,
int     *cname_length);

OCIコール(リリース7のみ)も参照してください。

sqlldat()

void SQLLDAGetCurrent(dvoid *context, 
Lda_Def   *lda);

リモートの複数接続も参照してください。

sqlnult()

void SQLColumnNullCheck(dvoid *context, 
unsigned short *value_type, 
unsigned short *type_code, 
int            *null_status);

NULL/NOT NULLデータ型の処理も参照してください。

sqlprct()

void SQLNumberPrecV6(dvoid  *context, 
unsigned long   *length, 
int             *precision, 
int             *scale);

精度と位取りの抽出も参照してください。

sqlpr2t()

void SQLNumberPrecV7(dvoid  *context, 
unsigned long   *length, 
int             *precision, 
int             *scale);

精度と位取りの抽出も参照してください。

sqlvcpt()

void SQLVarcharGetLength(dvoid  *context, 
unsigned long   *data_length, 
unsigned long   *total_length);

VARCHAR配列コンポーネントの長さを調べる方法も参照してください。

N/A

sword SQLEnvGet(dvoid *context,
OCIEnv          **oeh);

SQLEnvGet()を参照してください。

N/A

sword SQLSvcCtxGet(dvoid *context,
text            *dbname,
int             dbnamelen,
OCISvcCtx       **svc);

SQLSvcCtxGet()を参照してください。

N/A

void SQLRowidGet(dvoid *context,
OCIRowid        **urid);

SQLRowidGet()を参照してください。

N/A

void SQLExtProcError(dvoid *context,
char            *msg,
size_t          msglen);

外部プロシージャで使用する場合は、SQLExtProcError()を参照してください。

注意:

これらの関数の引数リストで使用される特定のデータ型については、プラットフォーム固有のバージョンのsqlcpr.hヘッダー・ファイルを参照してください。