5.4.2 各ODBC関数での繰り返し列と配列列の扱い
次に示すODBC関数での繰り返し列と配列列の扱いについて説明します。
-
SQLColumns関数
-
SQLColumnPrivileges関数
-
SQLStatistics関数
-
SQLDescribeCol関数
-
SQLDescribeParam関数
なお,SQLColumns関数,SQLColumnPrivileges関数,SQLDescribeCol関数,及びSQLDescribeParam関数では,繰り返し列と配列列の扱いが同じです。
(1) SQLColumns関数などでの繰り返し列と配列列の扱い
列の一覧情報を扱うSQLColumns関数や,列権限一覧情報を扱うSQLColumnPrivileges関数では,繰り返し列と配列列のそれぞれの要素を一つの列として扱います。同様に,SQLDescribeCol関数とSQLDescribeParam関数でも,繰り返し列と配列列のそれぞれの要素を一つの列として扱います。
これらの関数では,要素の数だけ列名が返されます。このとき,列名は次に示す形式で返されます。
列名(n):「n」は要素数を示します。
例えば,列名が「C1」で,配列要素数が「3」の繰り返し列(又は配列列)の列情報をSQLColumns関数で取得する場合,列名は,「C1(1)」,「C1(2)」,「C1(3)」の形式で返されます。
(2) SQLStatistics関数での繰り返し列と配列列の扱い
列のインデクス一覧情報を扱うSQLStatistics関数では,同じ列名の繰り返し列全体(又は同じ列名の配列列全体)を一つの列として扱います。したがって,要素が複数ある場合でも,要素が特定されないで列名だけが返されます。
列名が「D1」で,配列要素数が「5」の繰り返し列(又は配列列)のインデクス一覧情報をSQLStatistics関数で取得する場合,列名は「D1」で返されます。