[GRASS-user] Switching databases for holding attributes in Grass 7.4.1

Markus Metz markus.metz.giswork at gmail.com
Mon Jul 2 07:36:30 PDT 2018


On Mon, Jul 2, 2018 at 4:04 PM, Paul Shapley <p.shapley at gmail.com> wrote:
>
> Hi Markus,
>
> Used 'db.connect' driver=sqlite
database=$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db
>
> I had to delete 'database schema=grass_gis'
>
> I had to delete 'default group=postgis_reader'

That seems to be a bug in db.connect, apparently it is not possible to
reset schema and group. Can you please open a ticket?

Markus M

>
> Then 'RUN'
>
> output:-
>
> (Mon Jul 02 14:59:21 2018)

> db.connect

> (Mon Jul 02 14:59:22 2018) Command finished (1 sec)
>
> now attempted 'r.to.vect'
>
> r.to.vect
input=APGB_aerial_2_i_segment_drained_peat_with_exposed_haggs at PERMANENT
output=test1 type=area
> DBMI-SQLite driver error:
> Error in sqlite3_prepare():
> unknown database grass_gis
> DBMI-SQLite driver error:
> Error in sqlite3_prepare():
> unknown database grass_gis
> ERROR: Unable to create table: create table grass_gis.test1 ( cat
integer, value integer, label varchar(10))
> WARNING: Table <grass_gis.test1> linked to vector map <test1> does not
exist
>
> Repeat as above!!
>
> Used 'db.connect' driver=sqlite
database=$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db
>
> I had to delete 'database schema=grass_gis'
>
> I had to delete 'default group=postgis_reader'
>
> Then 'RUN'
>
>
>
> On 2 July 2018 at 14:41, Markus Metz <markus.metz.giswork at gmail.com>
wrote:
>>
>>
>>
>> On Mon, Jul 2, 2018 at 3:25 PM, Paul Shapley <p.shapley at gmail.com> wrote:
>> >
>> > Hi Markus,
>> >
>> > I used 'db.connect'
>>
>> which flags/options did you use?
>>
>> > followed by 'db.login'
>>
>> you don't need db.login for sqlite
>> >
>> > Please see below:-
>> >
>> > db.connect -p

>> > driver: sqlite
>> > database: C:\\TempLocation\PERMANENT\sqlite\sqlite.db
>> > schema: grass_gis
>> > group: postgis_reader
>> > (Mon Jul 02 14:17:04 2018) Command finished (0 sec)
>> >
>> > db.connect -d

>> > Default driver / database set to:
>> > driver: sqlite
>> > database: C:\\TempLocation\PERMANENT\sqlite\sqlite.db
>> > (Mon Jul 02 14:19:40 2018) Command finished (0 sec)
>> >
>> > Still holding 'schema' and 'group' details from PostGIS. Shouldn't
these have been dropped when changing to sqlite which is perhaps why the
connection is failing?
>>
>> yes.
>>
>> It seems that db.connect -g is better than db.connect -p to verify
connection settings, e.g. I get in the North Carolina sample dataset
>>
>> > db.connect -g
>> driver=sqlite
>> database=$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db
>> schema=
>> group=
>>
>> The database is not a real path but contains GRASS variables that are
evaluated on the fly. This is the default connection.
>>
>> Markus M
>>
>> >
>> > On 2 July 2018 at 14:10, Markus Metz <markus.metz.giswork at gmail.com>
wrote:
>> >>
>> >>
>> >>
>> >> On Mon, Jul 2, 2018 at 2:00 PM, Paul Shapley <p.shapley at gmail.com>
wrote:
>> >> >
>> >> > Hi Users,
>> >> >
>> >> > I want to use 'r.to.vect' but it seems to default to a 'Postgis'
table that has no geometry column just a table with a 'cat' id. I would
like to export to 'sqlite'. I have both postgres an sqlite login details
stored in 'db.login'. How do i switch between the two or at least make
sqlite the default? If I change settings with 'db.connect' to 'sqlite'
>> >>
>> >> what is the exact command you used to set the default connection to
sqlite?
>> >>
>> >> You can also try db.connect -d, otherwise you might need to specify
the default database to be used.
>> >>
>> >> In any case, please verify first with db.connect -p to see the
connection details used when creating a new vector.
>> >>
>> >> Markus M
>> >>
>> >> > it fails (error below) but still keeps holding onto the 'grass_gis'
schema form the Postgis connection!
>> >> >
>> >> > r.to.vect
input=APGB_aerial_2_i_segment_drained_peat_with_exposed_haggs at PERMANENT
output=test1 type=area
>> >> > DBMI-SQLite driver error:
>> >> > Error in sqlite3_prepare():
>> >> > unknown database grass_gis
>> >> > DBMI-SQLite driver error:
>> >> > Error in sqlite3_prepare():
>> >> > unknown database grass_gis
>> >> > ERROR: Unable to create table: create table grass_gis.test1 ( cat
integer, value integer, label varchar(10))
>> >> > WARNING: Table <grass_gis.test1> linked to vector map <test1> does
not exist
>> >> >
>> >> > Is there a preferred option to change databases more cleanly.
>> >> >
>> >> > Many thanks,
>> >> >
>> >> >
>> >> > --
>> >> > Paul J. Shapley MSc CGeog (GIS) FRGS
>> >> >
>> >> >
>> >> > _______________________________________________
>> >> > grass-user mailing list
>> >> > grass-user at lists.osgeo.org
>> >> > https://lists.osgeo.org/mailman/listinfo/grass-user
>> >>
>> >
>> >
>> >
>> > --
>> > Paul J. Shapley MSc CGeog (GIS) FRGS
>> >
>
>
>
>
> --
> Paul J. Shapley MSc CGeog (GIS) FRGS
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20180702/7ed945ba/attachment.html>


More information about the grass-user mailing list