Skip to main content

Python library for easily retrieving table names, geometry

Project description

columns, geometry tables, etc from a Spatialite database
Home-page: https://github.com/scolab-dot-eu/spatialite-introspect
Author: Cesar Martinez Izquierdo
Author-email: UNKNOWN
License: UNKNOWN
Description: spatialite-introspect
=====================

Python library to do introspection in Sqlite/Spatialite databases.

Useful to get the table names, the column names of a specific table, the
available geometry columns, etc, without needing to dig in SQL.

Installation
------------

::

pip install spatialiteintrospect

Dependences
-----------

spatialite-introspect uses
`sqlite3 <https://docs.python.org/2/library/sqlite3.html>`__, which
should be included in any Python distribution since version 2.5.

Usage
-----

Basic usage:

::

from spatialiteintrospect import introspect as i
# open db connection
db = i.Introspect("mydb.sqlite")

# get all the tables in the db
db.get_tables()
# The result is an array of table names, e.g.: ['tbl1', 'tbl2', 'tbl3']

# finally, we need to close the database
db.close()

Available methods:

::

# get all the tables in the db
db.get_tables()
# The result is an array of table names, e.g.: ['tbl1', 'tbl2', 'tbl3']

# get all the tables that contain at least one geometry field
db.get_geometry_tables()
# The result is an array of table names, e.g.: ['tbl1', 'tbl3']

# get the geometry columns of a specific table
db.get_geometry_columns("tbl1")
# The result is an array of column names, e.g.: ['the_point_geom', 'the_line_geom']

# get the geometry columns of a specific tables, plus some information about the table containing it
db.get_geometry_columns_info("tbl1")
# The result is an array of tuples such as
# [
# ('tbl1', 'the_point_geom', 2, 4326, 1, ['fid'], ['fid', 'title', 'the_point_geom', 'the_line_geom']),
# ('tbl1', 'the_line_geom', 2, 4326, 2, ['fid'], ['fid', 'title', 'the_point_geom', 'the_line_geom'])
# ]
# The contents of each tuple is: (table_name, geom_column, coord_dimension, srid, geometry_type, key_columns, fields)

# It also works with no table filter:
db.get_geometry_columns_info()
# Result:
# [
# ('tbl1', 'the_point_geom', 2, 4326, 1, ['fid'], ['fid', 'title', 'the_point_geom', 'the_line_geom']),
# ('tbl1', 'the_line_geom', 2, 4326, 2, ['fid'], ['fid', 'title', 'the_point_geom', 'the_line_geom']),
# ('tbl3', 'geom', 2, 4326, 1, ['fid'], ['fid', 'author', 'date', 'geom'])
# ]

# get the primary column(s) of a table
db.get_pk_columns("tbl2")
# The result is an array of the fields that compose the PK: ['country_cd', 'region_cd']

# get all the fields of a table
db.get_fields("tbl1")
# The result is an array of field names such as ['fid', 'title', 'the_point_geom', 'the_line_geom']

Note that the library expects Unicode strings on all the string params.
Non unicode strings are also accepted if using ASCII-only characters.

Authors
-------

Cesar Martinez Izquierdo - `Scolab <http://scolab.es>`__

Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Database
Classifier: Topic :: Software Development :: Libraries :: Python Modules

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

spatialiteintrospect-0.3.1-py2.py3-none-any.whl (6.8 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page