ondras / wwwsqldesigner

WWW SQL Designer, your online SQL diagramming tool
https://sql.toad.cz/?keyword=online_library
BSD 3-Clause "New" or "Revised" License
2.86k stars 722 forks source link

postgresql constraints all get the same name #307

Open torbjorn opened 2 years ago

torbjorn commented 2 years ago

It seems postgresql schemas get the same name for all constraints for a table (which obviously won't work)

I tried setting up a simple table with a id auto_increment primary key and a code text column that's unique:

This is what it generated:

    CREATE TABLE test (
     id BIGSERIAL,
     code TEXT NOT NULL
    );

    ALTER TABLE test ADD CONSTRAINT test_pkey PRIMARY KEY (id);
    ALTER TABLE test ADD CONSTRAINT test_pkey UNIQUE (code);

Notice how they are both named test_pkey. This does not work.

If I give the constraints specific names, it still doesn't change this behavior.

p43k commented 2 years ago

my solution, maybe you can think of something similar ....;) postgresql_keys-tunning.zip

p43k commented 2 years ago

deal with default value:

<xsl:if test="default and not ( default = 'NULL' or default = &quot;'NULL'&quot; )"> <xsl:text> DEFAULT </xsl:text> <xsl:value-of select="default" /> <xsl:text></xsl:text> </xsl:if>