Hi Fabrice,
I think this is the intended behaviour. If you leave it to the user to
enter the primary key then the db might complain about non-unique keys.
On the other hand why would you _want_ to assign a certain key? A key is
just a technical field used to identify a dataset. It should not contain
any information.
On my db I have three tables (point, line, polygon) that insert into the
same table representing a n:m relation. I use a sequence on the db and a
trigger to assign the next sequence value on INSERT. Apart from that I
have no need to interfere with my pk values and I am glad, that QGIS
takes care of that.
Bernhard
Am 15.05.2012 13:07, schrieb F T:
Hi all,
We are not able to set explicitly the value of an integer primary key field.
It is possible to set this value with pgAdmin.
But when the feature is created with QGis, it takes the next max value
of the field and not the spécified value...
To reproduce this strange behaviour :
-- create a table in the schema public with an integer primary key
CREATE TABLE the_table
(
the_key integer NOT NULL,
the_obs character varying(150),
geom geometry,
CONSTRAINT the_table_pkey PRIMARY KEY (the_key),
CONSTRAINT enforce_dims_geom CHECK (st_ndims(geom) = 2),
CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) =
'MULTILINESTRING'::text OR geom IS NULL),
CONSTRAINT enforce_srid_geom CHECK (st_srid(geom) = 2154)
)
WITH (
OIDS=TRUE
);
-- spatialize the table
INSERT INTO geometry_columns(f_table_catalog, f_table_schema,
f_table_name, f_geometry_column, coord_dimension, srid, "type")
VALUES('', 'public', 'the_table', 'geom', 2, 2154, 'MULTILINESTRING');
Then in QGIS :
- add this table to a project
- create 1 line with the_key=100 and save the edition -> open the
attribute table and you see the_key=0
- create 1 line with the_key=102 and save the edition -> open the
attribute table and you see the_key=1
If I modify the value of the_key in pgAdmin, by example put the value
1000 instead of 1, then the next line created with QGis will have the
value 1001.
Any help is welcome !
Thanks
Fabrice
_______________________________________________
Qgis-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-user
________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail Server.
http://www.nod32.com
_______________________________________________
Qgis-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-user