Witam
Korzystam z postgresql 9.1
mam 2 tabele:
CREATE TABLE layer
(
layer_name character varying(256) NOT NULL,
layer_type character varying(30) NOT NULL,
description character varying(256),
enabled boolean,
srid character varying(16) NOT NULL,
CONSTRAINT layer_pk PRIMARY KEY(layer_name)
);
CREATE TABLE attribute
(
layer_name character varying(256) NOT NULL,
attr_name character varying(256) NOT NULL,
attr_type character varying(30) NOT NULL,
description character varying(256),
"length" integer,
nillable boolean,
CONSTRAINT attribute_pk PRIMARY KEY (layer_name, attr_name),
CONSTRAINT attribute_fk FOREIGN KEY(layer_name) REFERENCES layer(layer_name) ON DELETE CASCADE
);
W swoim programie dodaje do bazy danych do tabeli attribute rekordy.
Gdy chce je odczytać także w programie zwracane są w kolejności uporządkowanej alfabetycznie, ja natomiast nie ustawiam żadnego sortowania -
"SELECT attr_name, attr_type, description, length, nillable FROM attribute WHERE layer_name = ?;"
Doszedłem do tego (testowane w pgAdminIII), że
SELECT * FROM attribute WHERE layer_name = 'da1111111'; - zwraca posortowane
SELECT * FROM attribute; - zwraca w kolejności w której było wrzucane
Czy to zależy od jakichś ustawień bazy? Jak to zmienić?
Z góry dziękuje za odpowiedzi.