定義
Is_Simple はテーブルを入力として受け取り、テーブルが拡張ジオデータベースの振舞いに関与しない場合 (したがって、シンプル テーブルとみなされる場合) は TRUE を返します。拡張ジオデータベースの振舞いには、以下のものが含まれます。
- アノテーション
- アタッチメント
- ディメンション
- 編集情報の記録
- ジオメトリック ネットワーク
- モザイク データセット
- ネットワーク データセット
- パーセル ファブリック
- ラスター カタログ
- ラスター データセット
- リレーションシップ クラス
- スケマティック データセット
- テレイン
- トポロジ
指定したテーブルが拡張ジオデータベース機能に関与している場合 (したがって、シンプル テーブルでない場合)、Is_Simple は FALSE を返します。シンプルでないテーブルは、ArcGIS 以外で編集しないでください。
指定したテーブルがジオデータベースに登録されていない場合、Is_Simple は NOT REGISTERED を返します。Is_Simple はテーブルの有無をジオデータベースのシステム テーブルのみで確認するため、テーブルがデータベースに存在しない場合 (たとえば、名前を間違えて入力した場合)、テーブルが登録されていないことを示すメッセージが返されることに注意してください。
構文
<geodatabase administrator schema>.is_simple (<table owner>, <table name>)
ほとんどのジオデータベースでは、ジオデータベース管理者のスキーマは sde です。ただし、SQL Server の dbo スキーマ ジオデータベースの場合、このスキーマは dbo になり、Oracle 内のユーザー スキーマ ジオデータベースの場合、このスキーマはユーザーのスキーマ名になります。
戻り値のタイプ
文字列
TRUE 指定したテーブルがジオデータベースに登録されていて履歴管理が有効である場合は、 が返されます。
FALSE 指定したテーブルがジオデータベースに登録されているが履歴管理が有効でない場合は、 が返されます。
NOT REGISTERED 指定したテーブルがジオデータベースに登録されていない、データベースに存在しない、またはテーブルにアクセスできない場合は、 が返されます。
例
以下に、Is_Simple 関数をサポートするデータベースでの Is_Simple 関数の使用例を示します。
最初の例は、PW ユーザーが所有している GUTTERS テーブルを検索して、シンプル テーブルとみなされるかどうかを判定しています。GUTTERS テーブルはジオメトリック ネットワークに参加していてトポロジが含まれているため、Is_Simple 関数は FALSE を返します。
2 つ目の例は、PW ユーザーが所有する SURVEYPTS テーブルを検索して、シンプル テーブルとみなされるかどうかを判定しています。SURVEYPTS テーブルはジオデータベース機能に関与していないため、Is_Simple 関数は TRUE を返します。
3 つ目の例は、MGRS ユーザーが所有する IMPORTS テーブルを検索しています。この場合、IMPORTS テーブルはサードパーティ製アプリケーションで作成されていて、ジオデータベースに登録されていません。
DB2
VALUES sde.is_simple('PW','GUTTERS')
FALSE
VALUES sde.is_simple('PW','SURVEYPTS')
TRUE
VALUES sde.is_simple('MGRS','IMPORTS')
NOT REGISTERED
Oracle
SELECT SDE.GDB_UTIL.Is_Simple('PW', 'GUTTERS') FROM DUAL;
SDE.GDB_UTIL.IS_SIMPLE('PW', 'GUTTERS') ---------------------------------------------------
FALSE
SELECT ENG.GDB_UTIL.Is_Simple('ENG', 'SURVEYPTS') FROM DUAL;
ENG.GDB_UTIL.IS_SIMPLE('PW', 'SURVEYPTS') ---------------------------------------------------
TRUE
SELECT SDE.GDB_UTIL.Is_Simple('MGRS', 'IMPORTS') FROM DUAL;
SDE.GDB_UTIL.IS_SIMPLE('MGRS', 'IMPORTS') ---------------------------------------------------
NOT REGISTERED
PostgreSQL
SELECT sde.is_simple('pw', 'gutters');
FALSE
SELECT sde.is_simple('pw', 'surveypts');
TRUE
SELECT sde.is_simple('mgrs', 'imports');
NOT REGISTERED
SQL Server
DECLARE @owner nvarchar(128) = 'pw';
DECLARE @table nvarchar(128) = 'gutters';
SELECT dbo.is_simple(@owner, @table) "Simple?"
Simple?
FALSE
DECLARE @owner nvarchar(128) = 'eng';
DECLARE @table nvarchar(128) = 'surveypts';
SELECT sde.is_simple(@owner, @table) "Simple?"
Simple?
TRUE
DECLARE @owner nvarchar(128) = 'mgrs';
DECLARE @table nvarchar(128) = 'imports';
SELECT sde.is_simple(@owner, @table) "Simple?"
Simple?
NOT REGISTERED