8 votos

Lo que se utiliza la tecnología detrás de arcpy cursores?

Estoy usando el Servidor de ArcGIS 10.0. Tengo un geoprocesamiento utilizando arcpy de búsqueda, actualización e inserción de los cursores. Me gustaría saber más sobre la tecnología detrás de estos cursores.

El uso de cualquier conductor o a la piscina para conectarse a la base de datos (estoy usando Oracle 11g)?

¿Se abre una conexión a la base de datos una vez en la creación del cursor y cerrarla cuando el cursor se borra? ¿Qué acerca de las transacciones?

¿El cursor de abrir una nueva conexión y de transacciones a la base de datos cada vez que se actualiza una fila o insertado?

4voto

cupakob Puntos 305

Todos ArcPy hace es proporcionar ganchos en la normal de ArcGIS desktop. Justo como el escritorio una vez que usted tiene una conexión que se mantendrá abierta hasta que explícitamente se cierra con ArcGIS (generalmente, cuando el asociado de python que las ventanas están cerradas). Como para los conductores que se usan los controladores de instalar ArcGIS para conectarse a su ArcSDE/RDBMS

3voto

GreyCat Puntos 146

Usted necesita entender el concepto de Python cursores.

Se modeló después de la base de datos de SQL cursores en el PEP 249: Python API de Base de datos de la Especificación v2.0 para procesar los resultados devueltos por las consultas de base de datos.

La mayoría de Python interfaces de bases de datos de respetar esta norma: cx_Oracle (Oracle), Psycopg2 (PostgreSQL/PostGIS), MySQLdb (MySQL), sqlite3 (SQLite), etc..

Un cursor que permite la recuperación de uno o más filas del resultado, hasta que todas las filas coincidentes han sido procesados y recuperará todo el conjunto de resultados a la vez, lo que puede provocar problemas de velocidad de procesamiento (rendimiento) (¿hay algo más rápido que un cursor en ArcGIS para calcular los registros?).

Las bases de datos de los cursores generalmente devuelve una lista de tuplas o lista de la lista, mientras que el cursor métodos en ArcGIS devolver un Python enumeración de objetos.

Para mejorar el cursor solución, varios envoltorios que proporcionan simplificado interfaces a bases de datos SQL existen. Algunos de estos podría ser denominado como objeto relacional mappers, o ORM (creación de Python objetos de la base de datos de las filas) y otros sólo pueden ayudar a generar SQL, o realizar de forma sencilla la asignación de apoyo (véase el Mayor Nivel de Programación de Base de datos)

Para ArcPy, ofrecen las soluciones de, por ejemplo, Sean Gillies (que) y otros.

Las otras soluciones geoespaciales (PyQGIS, hierba, de osgeo.ogr, Pyshp, Rpy, Fiona, PySAL,etc.) no utilice los cursores, que hace las cosas más fáciles...

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X