odbc_tableprivileges

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_tableprivileges各テーブルのリストおよび関連する権限のリストを取得する

説明

odbc_tableprivileges(
    resource $odbc,
    ?string $catalog,
    string $schema,
    string $table
): resource|false

指定した範囲にあるテーブルおよび各テーブルに関連する権限のリストを取得します。

パラメータ

odbc

ODBC 接続 ID。詳細は odbc_connect() を参照ください。

catalog

カタログ(ODBC 2 の用語では '修飾子')。

schema

スキーマ (ODBC 2 の用語では '所有者')。 このパラメータには以下の検索パターンを使用できます。 % はゼロ個以上の文字にマッチし、 _ はひとつの文字にマッチします。

table

名前。 このパラメータには以下の検索パターンを使用できます。 % はゼロ個以上の文字にマッチし、 _ はひとつの文字にマッチします。

戻り値

ODBC 結果 ID を返します。失敗した場合に false を返します。

結果セットのカラムは次のようになります。

  • TABLE_CAT
  • TABLE_SCHEM
  • TABLE_NAME
  • GRANTOR
  • GRANTEE
  • PRIVILEGE
  • IS_GRANTABLE
ドライバは追加のカラムを返すことが出来ます。

結果セットは TABLE_CAT, TABLE_SCHEM, TABLE_NAME, PRIVILEGE, GRANTEE でソートされます。

例1 テーブルの権限を表示する

<?php
$conn 
odbc_connect($dsn$user$pass);
$privileges odbc_tableprivileges($conn'SalesOrders''dbo''Orders');
while ((
$row odbc_fetch_array($privileges))) {
    
print_r($row);
    break; 
// further rows omitted for brevity
}
?>

上の例の出力は、 たとえば以下のようになります。

Array
(
    [TABLE_CAT] => SalesOrders
    [TABLE_SCHEM] => dbo
    [TABLE_NAME] => Orders
    [GRANTOR] => dbo
    [GRANTEE] => dbo
    [PRIVILEGE] => DELETE
    [IS_GRANTABLE] => YES
)

参考

  • odbc_tables() - 指定したデータソースに保存されたテーブルの名前のリストを取得する

関連キーワード:  リスト, テーブル, 権限, 取得, TABLE, および, 関連, マッチ, 文字, tableprivileges