Search Postgresql Archives

Insert fails when it shouldn't

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The table:
CREATE TABLE DILOSIS (
	DL_AEM INT NOT NULL,
	DL_CODE VARCHAR(6) NOT NULL,
	DL_YEAR INT NOT NULL,
	DL_GRADE FLOAT(3) NOT NULL,
	DL_LESTYPE INT NOT NULL,
	DL_SEMESTER INT NOT NULL,
	DL_DM INT NOT NULL,
	DL_COEF FLOAT(3), --Syntelestis ptyxiou
	DL_CAT_NORM BOOLEAN NOT NULL, --TRUE NORMAL, FALSE APALLAGI
	DL_TEI INT NOT NULL,
	DL_THERINO BOOLEAN NOT NULL
);
ALTER TABLE DILOSIS ADD CONSTRAINT pk_dilosis PRIMARY KEY (DL_AEM, DL_CODE, DL_YEAR, DL_TEI, DL_SEMESTER);

The table is empty and statements
stored in a file are executed with psql.
===== Statements ===
\encoding iso_8859_7
delete from dilosis;
INSERT INTO DILOSIS VALUES(1, 'ΓΕ0100', 2000, 0.00, 1, 1, 5, 5.00, true, 1, true);
INSERT INTO DILOSIS VALUES(1, 'ΗΥ0100', 2000, 0.00, 1, 1, 5, 5.00, true, 1, true);

The second insert fails with an error message:
psql:a.sql:4: ERROR:  duplicate key violates unique constraint "pk_dilosis"

The second insert is identical to the first one except
the DL_CODE value.
1:ΓΕ0100 (Gamma Epsilon ..)
2:ΗΥ0100 (Heta Ypsilon ..)

I think what is hapening is that the two first
letters are ignored and the two values are found
identical since the postfix is 0100 for bouth of them.

What can be done so the second instert does not fail?

Anakreon
-- 
Three words describe our society:homo homini lupus



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux