Insertar por SQL

Descripción

Inserta las características de una tabla mediante la realización de una consulta en una tabla utilizando una cadena de comandos de actualización MI SQL con un intervalo de confirmación opcional. En algunos casos, la tabla requerirá una columna clave primaria, según el proveedor de datos y la consulta. Consulte la Referencia de lenguaje SQL de MapInfo para obtener información detallada sobre los comandos y funciones de MI SQL.

Nota: Debe tener permisos de visualización para la tabla con nombre, así como permisos de creación/modificación/eliminación para el conjunto de datos asociado de la tabla con nombre a fin de realizar operaciones de inserción, actualización y eliminación en tablas donde se pueda escribir. Consulte Control de acceso para los conjuntos de datos en la sección Administración para obtener más información.
Nota: Se admite la inserción en PostGIS, Oracle, SQL Server, SAP HANA, GeoPackage y las tablas JDBC genéricas. También se admite en archivos TAB nativo extendido (NativeX) y TAB nativo MapInfo solo en los sistemas operativos Windows (se ignora el valor commitInterval). Las tablas con nombre asignado con claves principales compuestas no permiten la escritura.

Flujo de autorización de ACL

Para insertar características en una tabla con nombre asignado, será necesario que el usuario (o las funciones a las que pertenezca) ejecute y cree permisos en la tabla con nombre asignado de la siguiente manera:

  • "EJECUTAR" para el tipo de entidad "Location Intelligence.Named Resources" para el usuario
  • "CREAR" para el tipo de entidad "Location Intelligence.Dataset.DML", respectivamente

Mensajes

La siguiente tabla enumera los mensajes de solicitud y de respuesta para la operación insertBySQL.

Haga clic en el nombre de un mensaje para obtener más información acerca de este.

Mensaje Descripción
InsertBySQLRequest El mensaje de solicitud de la operación insertBySQL.
InsertBySQLResponse El mensaje de respuesta de la operación insertBySQL.

Ejemplo

Solicitud de ejemplo para insertar características en una tabla que utiliza el comando de inserción MI SQL con parámetros vinculados y un intervalo de confirmación:


						
<InsertBySQLRequest
              xmlns:ns2="http://www.mapinfo.com/midev/service/featurecollection/v1"
              xmlns:ns3="http://www.mapinfo.com/midev/service/style/v1"
              xmlns:ns4="http://www.mapinfo.com/midev/service/geometries/v1"
              xmlns:ns5="http://www.mapinfo.com/midev/service/table/v1"
               xmlns:ns6="http://www.mapinfo.com/midev/service/feature/v1">
       <ns6:SQL>"INSERT INTO "\NameTable" (COL1, COL2, COL3, OBJ) VALUES 
		(@param1,'New Feature1', 20, MI_Line('-92.2,13.1,-87.4,16.6','epsg:4326')), 
		(@param2, 'New Feature2', 30, MI_Line('-92,13,-87,16','epsg:4326')), 
		(@param3, 'New Feature3', 40, MI_Line('-92,13,-87,16','epsg:4326')) 
		commit_interval 1</ns6:SQL>
       <ns6:BoundParameterList>
              <ns6:BoundParameter name="param1">
                      <ns6:Value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
				xsi:type="ns2:IntValue">
                              <ns2:Value>10</ns2:Value>
                      </ns6:Value>
              </ns6:BoundParameter>
                   <ns6:BoundParameter name="param2">
                      <ns6:Value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
				xsi:type="ns2:IntValue">
                              <ns2:Value>20</ns2:Value>
                      </ns6:Value>
              </ns6:BoundParameter> 
     <ns6:BoundParameter name="param3">
                      <ns6:Value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
				xsi:type="ns2:IntValue">
                              <ns2:Value>30</ns2:Value>
                      </ns6:Value>
              </ns6:BoundParameter> 
       </ns6:BoundParameterList>
</InsertBySQLRequest>