TABLEIDコマンドは、データベース名および表名が指定された場合、指定されたテーブルの表番号を表示します。
構文
TABLEID { "databasename.tablename" | "databasename"."tablename" | 'databasename.tablename' | 'databasename'.'tablename' }
構文要素
- databasename
- テーブル番号が表示されるテーブルを含んだデータベースの名前
- tablename
- テーブル番号が表示されるテーブルの名前
構文図で示したとおり、データベース名とテーブル名は、アポストロフィまたは二重引用符で囲む必要があります。
使用上の注意
テーブルは、テーブル番号(tvm.tvmid)によってデータ ディクショナリで識別されます。各表番号は、データベースのローカル識別子ではなく、システム全体で固有の識別子です。これによって、テーブル番号は、システム内のテーブルを固有に識別します。
TABLEIDコマンドは、databasenameおよびtablenameによって指定されたテーブルのテーブル番号を表示します。TABLEIDコマンドの出力は、数値のサブテーブル識別子(tid)で、3つの番号で構成されます。
- 最初の2つは、テーブル番号です。この番号の組を使用して、システム内のテーブルを固有に識別します。
- 3つ目は、typeandindex値で、テーブル ヘッダー、データ サブテーブル、特定のインデックス サブテーブルなどのサブテーブルの種類を指定します。TABLEIDは、必ずtypeandindexの値をゼロ(0)で戻します。ゼロは、テーブル ヘッダーを指定します。
tidを解釈する方法についての詳細は、Ferretパラメータの使用を参照してください。
databasenameおよびtablenameを指定するときに以下のルールが適用されます。
- データベース名とテーブル名を分けるために、ピリオド(.)が必要です。
- データベース名とテーブル名を入力するときには、アポストロフィ(')または二重引用符(")を使用する必要があります。どちらの場合も結果は同じです。
- 構文図に示された任意の方法で、完全修飾されたテーブル名を指定できます。ただし、以下の例外に注意してください。
- オブジェクト名自体に単一引用符が含まれる場合、オブジェクト名を二重引用符で囲む必要があります。有効な例は以下のとおりです。
- tableid "xyz.mark’s table"
- tableid "xyz"."mark’s table"
無効な例は以下のとおりです。- tableid 'xyz.mark’s table'
- tableid "xyz".'mark’s table'
- オブジェクト名にピリオドが含まれる場合、"database"."tablename" または 'database'.'tablename'という形式で、完全修飾したテーブル名を入力する必要があります。有効な例は以下のとおりです。
- tableid "xyz.0’s"."mark’s table.2.53.00"
- tableid 'xyz'.'table.0'
無効な例は以下のとおりです。- tableid "xyz.0’s.mark’s table.2.53.00"
- tableid 'xyz.0’s.mark’s table.2.53.00'
- オブジェクト名自体に単一引用符が含まれる場合、オブジェクト名を二重引用符で囲む必要があります。
例: TABLEIDを使用してテーブルのID番号を表示
次の例は、TABLEIDが生成する出力を示しています。
Ferret ==> tableid "mydatabase.mytable" The table id for MYDATABASE.MYTABLE is 1 1217 0 (0x0001 0x4C1 0x0000)
以下のコマンドを使用すると、同じ結果が得られます。
tableid 'mydatabase.mytable' tableid "mydatabase"."mytable" tableid 'mydatabase'.'mytable'