Tabla de Vista

Ejemplo

Los recursos de tabla con nombre asignado pueden definirse por una vista (consulta de los datos) utilizando una declaración MI SQL contra una tabla. Lo anterior utiliza la definición de origen de datos MapinfoSQLDataSourceDefinition para especificar la consulta SQL y el nombre de la tabla utilizada en la consulta. Hay dos maneras de definir las tablas de vista: definir tanto la definición para la tabla y la consulta, o especificar una tabla con nombre asignado existente y la consulta.

En este ejemplo, se define la tabla utilizada en la consulta (un origen de datos de archivo TAB denominado World123) y luego se define la consulta (denominada View123). Al convocar esta tabla de vista con nombre asignado, se usa el nombre de la MapinfoSQLDataSourceDefinition (View123).

En este ejemplo, la definición utiliza las siguientes muestras:

  • @filedir@ el directorio en el sistema de archivos donde se ubica el archivo de tabla


<?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>

			

En este ejemplo, la tabla utilizada en la consulta es una tabla con nombre asignado existente que ya estaba definida en el repositorio. Se debe especificar la tabla con nombre asignado mediante una referencia de definición NamedDataSourceDefinitionRef que lleve a la ruta completa de la tabla dentro del repositorio. La consulta se define luego utilizando esta tabla con nombre asignado (especifique también la ruta completa hacia la tabla con nombre asignado). Al convocar esta tabla de vista con nombre asignado, se usa el nombre de la 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>