oci_field_type_raw

Oracle におけるフィールドの型を問い合わせる

説明

intfalse oci_field_type_raw(resource $statement, stringint $column)

フィールド column の、Oracle における生の "SQLT" データ型を返します。

フィールドの型の名前を取得したい場合は oci_field_type を使いましょう。

パラメータ

statement

有効な OCI ステートメント ID。

column

フィールド番号 (1 から始まる) あるいは名前のいずれか。

戻り値

Oracle のデータ型を表す数値を返します。 失敗した場合に false を返します

例1 oci_field_type_raw の例

<?php

// 以下のテーブルを用意します
//   CREATE TABLE mytab (number_col NUMBER, varchar2_col varchar2(1), clob_col CLOB, date_col DATE);

$conn = oci_connect("hr", "hrpwd", "localhost/XE");
if (!$conn) {
    $m = oci_error();
    trigger_error(htmlentities($m['message']), E_USER_ERROR);
}

$stid = oci_parse($conn, 'select * from mytab');
oci_execute($stid, OCI_DESCRIBE_ONLY);  // 行をフェッチしない場合は OCI_DESCRIBE_ONLY を使います
$n = oci_num_fields($stid);
for ($i = 1; $i <= $n; ++$i) {
    echo oci_field_name($stid, $i) . " is raw type: " . oci_field_type_raw($stid, $i) . "<br>\n";
}

// 出力は
//    NUMBER_COL is raw type: 2
//    VARCHAR2_COL is raw type: 1
//    CLOB_COL is raw type: 112
//    DATE_COL is raw type: 12

oci_free_statement($stid);
oci_close($conn);

?>