57 Commits

Author SHA1 Message Date
Alessandro Pasotti
a3c4eb9947
Providers connections interface API
This is the implementation of the new DB connections API (grant proposal 2019).
Summary

The new API makes it available to QGIS core a new interface for provider connections and will allow to:

    replace the provider specific QgsSettings management in QGIS4 (save/load connections from the settings) NOT IN SCOPE FOR NOW.
    provide a unified API for common operations on DB connections:
        executeSql and get the results
        list tables names and properties and schemas
        create a new vector table (no rasters for now)
        create/rename/drop schemas and tables
        vacuum
       ....
2019-08-16 20:44:05 +02:00
nirvn
b5146db92e Use the QgsSqliteUtils system tables list in DB Manager 2019-03-01 12:30:04 +07:00
Ailurupoda
db06040b60 Change != True to not + getComment and commentTable on main file if not needed only 2019-02-08 10:45:49 +01:00
Ailurupoda
9741515fae Replace db.connector/self + is None 2019-02-08 08:30:48 +01:00
Ailurupoda
8ed7971626 Another fix try 2019-02-07 17:29:25 +01:00
Ailurupoda
832eb40166 Another fix try 2019-02-07 16:59:12 +01:00
Ailurupoda
f27ecab62f Fix travis 2019-02-07 16:44:28 +01:00
Ailurupoda
277d4fefae Fixing travis test 2019-02-07 13:10:37 +01:00
Ailurupoda
63c010dbb5 Fix create and delete comment from tableProperties 2019-02-07 09:56:48 +01:00
Ailurupoda
f3dfd97d90 New fix, still some need to be done 2019-02-06 17:37:48 +01:00
Ailurupoda
dff185355d Fix bug comment on postgres and others management 2019-02-06 10:53:56 +01:00
Corentin.F
a80f3d01ee
Merge branch 'master' into sirs_db_manager 2019-01-23 11:22:12 +01:00
Ailurupoda
00852f1642 Update oracle, vlayer, spatialite connector.py 2019-01-23 11:20:24 +01:00
Julien Cabieces
49cb397f89 Update layer statistics when adding column to table in order to be displayed by QGIS
fixes #13504
2019-01-22 07:54:12 +11:00
nirvn
b315fbce8d [spatialite provider][dbmanager] hide a few more tables 2018-06-30 15:43:31 +07:00
nirvn
af322fbd63 [dbmanager] hide more spatialite tables by default 2018-06-30 15:43:31 +07:00
Blottiere Paul
bf7df6d2e3 Add a cancel button for Postgis and Spatialite 2018-03-02 09:43:26 +00:00
Nyall Dawson
838bde33ab [dbmanager] Workaround Python error when vacuuming spatialite table
Workaround https://bugs.python.org/issue28518

Fixes #18079
2018-02-16 12:34:16 +11:00
Harrissou Sant-anna
6fab688298 Use SpatiaLite right spelling when needed 2017-07-07 01:26:38 +02:00
Juergen E. Fischer
beed86e19d db manager: fix spatialite plugin (followup c77172ed; fixes #16542) 2017-05-21 10:45:30 +02:00
Juergen E. Fischer
c77172ed3d fix more flake8 warnings 2017-03-05 10:21:24 +01:00
Denis Rouzaud
748be8de71 [spelling] replace behaviour by behavior 2017-01-11 11:35:19 +01:00
Even Rouault
2c1356cd1d [DBManager] Remove geopackage support from spatialite plugin 2016-10-18 20:08:27 +02:00
nirvn
20d006e101 [db manager] fix spatialite error reporting 2016-10-07 12:07:55 +07:00
Juergen E. Fischer
31df84aa6b run 2to3 on source 2016-09-21 23:30:04 +02:00
Mathieu Pellerin
cd1d44be9d [db manager] python3 support (#3512) 2016-09-20 09:34:36 +02:00
Hugo Mercier
5c3a43e286 Fix spatialite access with python3 2016-09-05 13:43:00 +02:00
Matthias Kuhn
bb79d13e82 Remove deprecated Qgis::WKBType and API cleanup (#3325)
* Remove deprecated Qgis::WKBType and API cleanup

Renames QgsWKBTypes to QgsWkbTypes

Replaces usage of the enums:

* Qgis::WKBType with QgsWkbTypes::Type
* Qgis::GeometryType with QgsWkbTypes::GeometryType

Their values should be forward compatible (a fact that was already
explited up to now by casting between the types)

Renames some SSLxxx to SslXxx and URIxxx to UriXxx

* Fix build warnings and simplify type handling

* Add a fixer to rewrite imports

* The forgotten rebase conflictThe forgotten rebase conflicts

* QgsDataSourcURI > QgsDataSourceUri

* QgsWKBTypes > QgsWkbTypes

* Qgis.WKBGeom > QgsWkbTypes.Geom

* Further python fixes

* Guess what... Qgis::wkbDimensions != QgsWkbTypes::wkbDimensions

* Fix tests

* Python 3 updates

* [travis] pull request caching cannot be disabled

so at least use it in r/w mode

* Fix python3 print in plugins
2016-08-04 09:10:08 +02:00
Nyall Dawson
1a2231f10c Rename QGis class to Qgis, for capitalisation consistency 2016-07-21 22:01:38 +10:00
Juergen E. Fischer
1f0fce7852 db manager: fix drag and drop import (fixes #13712) 2016-06-22 12:35:17 +02:00
Denis Rouzaud
8071acd064 move PyQt compat folder to python/qgis 2016-04-29 14:10:26 +02:00
Juergen E. Fischer
c55f8b73f0 db_manager: cleanups 2016-03-21 17:00:24 +01:00
Juergen E. Fischer
8bda5c00a5 db_manager: migrate to new style signals 2016-03-15 23:46:54 +01:00
Martin Dobias
63be2e5303 Fix DB manager to work with SpatiaLite < 4.2 2016-02-23 16:39:30 +08:00
Michael Douchin
bae865153f [bugfix][DbManager] 14110 - Error fetching layer indexes with recent sqlite version
Fixes #14110

The method `getTableIndexes`, situated in line 371 of the file `db_manager/db_plugins/spatialite/connector.py`,
expected to get 3 fields from the sqlite method `PRAGMA index_list` .
In recent versions of SQLite, since 3.8.9, though, this method now returns 5 fields.
This commit fixes this issue by checking the length of columns returned by the method.
2016-01-19 10:27:52 +01:00
Giuseppe Sucameli
03916d549a [DBManager] add SL/Geopackage connection by drag&drop (follow b11f67b4f5), improve GPKG support:
- recognize tables with geometry,
- load GPGK layers to canvas from context menu,
- disable table editing
2015-09-03 01:22:54 +02:00
Juergen E. Fischer
b39055b39c indentation update (now including autopep8) 2015-08-22 14:29:41 +02:00
Juergen E. Fischer
a6c3de3047 db_manager: properly parse sqlite version (followup 5b86e38) 2015-07-11 23:42:46 +02:00
Juergen E. Fischer
5b86e38676 db_manager: only try isgpkg on spatialite plugin and sqlite version parsing 2015-07-11 23:24:13 +02:00
Cedric Christen
4420b3bf99 Drag&Drop support for GeoPackage layers 2015-06-26 16:35:31 +02:00
Hugo Mercier
e440dee1bd [DBManager] Add a 'create view' button 2015-05-04 17:19:21 +02:00
Hugo Mercier
4876e7a2be [DBManager] Integrate QSpatialite's query builder 2015-05-04 17:19:09 +02:00
Juergen E. Fischer
12d7cfca03 indentation update 2015-04-07 14:27:39 +02:00
Nathan Woodrow
297a94fc58 Fix formatting of db manager python code 2015-03-21 20:35:29 +10:00
Juergen E. Fischer
956c155e8f fix python pep8 warnings and fix some revealed errors
pep8 --ignore=E111,E128,E201,E202,E203,E211,E221,E222,E225,E226,E227,E231,E241,E261,E265,E272,E302,E303,E501,E701 \
     --exclude="ui_*.py,debian/*,python/ext-libs/*" \
     .
2015-02-01 20:46:47 +01:00
Marcel Dancak
b9f8176e66 db_manager: do not display index tables when browsing SpatiaLite databases 2014-11-28 10:12:26 +01:00
Juergen E. Fischer
b9ada4c2d4 dbmanager: fix spatialite connection error message 2013-07-16 12:18:30 +02:00
Juergen E. Fischer
558fe92eb1 dbmanager: adapt to sl4 metadata tables (fixes #8290) 2013-07-13 22:53:51 +02:00
Giuseppe Sucameli
49970b0413 DBManager: more SIP API update (fix #8132) 2013-06-23 00:03:26 +02:00
Juergen E. Fischer
f0c605e0fa dbmanager: add i18n 2013-06-09 18:51:47 +02:00