ビュー テーブル

名前付きテーブル リソースは、テーブルに対して MI SQL 文を使用するビュー (データのクエリ) によって定義されます。この方法では、MapinfoSQLDataSourceDefinition データソース定義を使用して、SQL クエリ、およびこのクエリで使用するテーブル名を指定します。ビュー テーブルは、2 つの方法で定義できます。テーブルおよびクエリに対する定義を行う方法と、既存の名前付きテーブルおよびクエリを指定する方法です。

この例では、クエリで使用するテーブル (World123 という TAB ファイル データ ソース) を定義し、次にクエリ (View123) を定義します。この名前付きビュー テーブルを呼び出すときは、MapinfoSQLDataSourceDefinition の名前 (View123) を使用します。

この例では、以下のトークンを使用して定義しています。

  • @filedir@ テーブル ファイルがあるファイル システム上のディレクトリ


<?xml version="1.0" encoding="UTF-8"?>
<NamedDataSourceDefinition version="MXP_WorkSpace_1_5" xmlns="http://www.mapinfo.com/mxp">
	<ConnectionSet>
        <NamedConnectionRef resourceID="/Samples/NamedConnections/SampleData">
            <ConnectionName>SampleData</ConnectionName>
        </NamedConnectionRef>
    </ConnectionSet>
	<DataSourceDefinitionSet>
		<TABFileDataSourceDefinition id="id2" readOnly="false">
			<DataSourceName>World123</DataSourceName>
			<FileName>@filedir@/world.tab</FileName>
		</TABFileDataSourceDefinition>
		<MapinfoSQLDataSourceDefinition id="id3" readOnly="false">
			<DataSourceName>View123</DataSourceName>
			<MapinfoSQLQuery>
				<Query>SELECT Country,Capital,Pop_1994,Pop_Male,Pop_Fem, Obj FROM World123 WHERE Country IN ('India','Canada','Vietnam','Brazil','China','Japan')</Query>
			</MapinfoSQLQuery>
		</MapinfoSQLDataSourceDefinition>
	</DataSourceDefinitionSet>
	<DataSourceRef ref="id3"/>
</NamedDataSourceDefinition>

			

この例では、クエリで使用するテーブルは、リポジトリ内に既に定義されている既存の名前付きテーブルです。リポジトリ内のテーブルのフル パスに対して、NamedDataSourceDefinitionRef を使用して名前付きテーブルを指定する必要があります。次に、この名前付きテーブルを使用して、クエリを定義します (名前付きテーブルへの完全なパスも指定)。この名前付きビュー テーブルを呼び出すときは、MapinfoSQLDataSourceDefinition の名前 (View123) を使用します。



<?xml version="1.0" encoding="UTF-8"?>
<NamedDataSourceDefinition version="MXP_NamedResource_1_5" xmlns="http://www.mapinfo.com/mxp" >
	<ConnectionSet>
        <NamedConnectionRef resourceID="/Samples/NamedConnections/SampleData">
            <ConnectionName>SampleData</ConnectionName>
        </NamedConnectionRef>
    </ConnectionSet>
	<DataSourceDefinitionSet>
		<NamedDataSourceDefinitionRef id="id0" resourceID="/NamedTables/WorldTable"/>
		<MapinfoSQLDataSourceDefinition id="id3" readOnly="false">
			<DataSourceName>View123</DataSourceName>
			<MapinfoSQLQuery>
				<Query>SELECT * from "/NamedTables/WorldTable"</Query>
			</MapinfoSQLQuery>
		</MapinfoSQLDataSourceDefinition>
	</DataSourceDefinitionSet>
	<DataSourceRef ref="id3"/>
</NamedDataSourceDefinition>