次のサンプル・プログラム部分は、SQLAllocHandle 関数の呼び出し方法を示しています。
. . .
WORKING-STORAGE SECTION.
COPY ODBC3.
. . .
01 SQL-RC COMP-5 PIC S9(4).
01 Henv POINTER.
. . .
PROCEDURE DIVISION.
. . .
CALL “SQLAllocHandle”
USING
By VALUE sql=handle-env
sql-null-handle
By REFERENCE Henv
RETURNING SQL-RC
IF SQL-RC NOT = (SQL-SUCCESS or SQL-SUCCESS-WITH-INFO)
THEN
DISPLAY “SQLAllocHandle failed.”
. . .
ELSE
. . .
SQLConnect 関数の呼び出し例を次に示します。
. . .
CALL “SQLConnect” USING BY VALUE ConnectionHandle
BY REFERENCE ServerName
BY VALUE SQL-NTS
BY REFERENCE UserIdentifier
BY VALUE SQL-NTS
BY REFERENCE AuthentificationString
BY VALUE SQL-NTS
RETURNING SQL-RC
. . .
. . .
SET Ptr-to-ServerName TO ADDRESS OF ServerName
SET Ptr-to-UserIdentifier TO ADDRESS OF UserIdentifier
SET Ptr-to-AuthentificationString TO ADDRESS OF AuthentificationString
CALL “SQLConnect” USING BY VALUE ConnectionHandle
Ptr-to-ServerName
SQL-NTS
Ptr-to-UserIdentifier
SQL-NTS
Ptr-to-AuthentificationString
SQL-NTS
RETURNING SQL-RC
. . .
. . .
CALL “SQLConnect” USING BY VALUE ConnectionHandle
ADDRESS OF ServerName
SQL-NTS
ADDRESS OF UserIdentifier
SQL-NTS
ADDRESS OF AuthentificationString
SQL-NTS
RETURNING SQL-RC
. . .
例 3 では、Servername、UserIdentifier、および AuthentificationString をレベル 01 項目として LINKAGE SECTION 内で定義する必要があります。
BY REFERENCE または BY VALUE 句は、別の BY REFERENCE、BY VALUE、または BY CONTENT 句によってオーバーライドされるまで、すべての引数に適用されます。