From: | Melvin Davidson <melvin6925(at)gmail(dot)com> |
---|---|
To: | James Keener <jim(at)jimkeener(dot)com> |
Cc: | pgsql-general(at)lists(dot)postgresql(dot)org, Michelle Konzack <linux4michelle(at)tamay-dogan(dot)net> |
Subject: | Re: Scheme conversion MySQL to PGSQL |
Date: | 2017-12-24 18:20:55 |
Message-ID: | CANu8FiyLfgush4jGyQAQHjrnHckNUVOKsWXypwyBTNF9TrK=9g@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sun, Dec 24, 2017 at 1:04 PM, James Keener <jim(at)jimkeener(dot)com> wrote:
> What are the errors you're getting?
>
> I don't think unique key is the correct syntax.
> https://www.postgresql.org/docs/current/static/indexes-unique.html
>
> I also don't think the key can be named the same as the field.
>
> Jim
>
> On December 24, 2017 12:52:39 PM EST, Michelle Konzack <
> linux4michelle(at)tamay-dogan(dot)net> wrote:
>>
>> Hello *
>>
>> I try to convert a Database scheme from mySQL to pgSQL and have
>> problems with the line:
>>
>> KEY post_date (post_date)
>>
>> and later probably with the lines
>>
>> UNIQUE KEY user (stat_login)
>> and
>> KEY forum_id (forum_id)
>>
>> too. How to solv this prolem?
>>
>> Thanks
>> Michelle
>>
>> ----8<
>> ------------------------------
>>
>> CREATE TABLE sqmf_forum (
>> forum_id serial NOT NULL,
>> forum_name varchar(50) NOT NULL,
>> forum_description varchar(250) NOT NULL,
>> forum_visible integer NOT NULL default '0',
>> display_order integer NOT NULL default '1',
>> PRIMARY KEY (forum_id)
>> );
>>
>> CREATE TABLE sqmf_post (
>> post_id serial NOT NULL,
>> thread_id integer NOT NULL,
>> post_login varchar NOT NULL,
>> post_date timestamp NOT NULL,
>> post_content text NOT NULL,
>> PRIMARY KEY (post_id),
>> KEY post_date (post_date)
>> );
>>
>> CREATE TABLE sqmf_stat (
>> stat_login varchar(70) NOT NULL,
>> stat_post integer default '1',
>> stat_thread integer default '1',
>> PRIMARY KEY (stat_login),
>> UNIQUE KEY user (stat_login)
>> );
>>
>> CREATE TABLE sqmf_thread (
>> thread_id serial NOT NULL,
>> forum_id integer NOT NULL,
>> thread_login varchar(70) NOT NULL,
>> thread_date datetime NOT NULL,
>> thread_title varchar(200) NOT NULL,
>> thread_content longtext NOT NULL,
>> nb_view integer NOT NULL default '0',
>> nb_post integer NOT NULL default '1',
>> last_post_date datetime NOT NULL,
>> last_post_login varchar(70) NOT NULL,
>> PRIMARY KEY (thread_id),
>> KEY forum_id (forum_id)
>> );
>> ----8<
>> ------------------------------
>>
>>
>>
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
>
In PostgreSQL it would be:
CREATE TABLE sqmf_stat (
stat_login varchar(70) NOT NULL,
stat_post integer default '1',
stat_thread integer default '1',
CONSTRAINT sqmf_stat_pk PRIMARY KEY (stat_login),
CONSTRAINT sqmf_stat_uq UNIQUE (stat_login)
);
CREATE TABLE sqmf_thread (
thread_id serial NOT NULL,
forum_id integer NOT NULL,
thread_login varchar(70) NOT NULL,
thread_date timestamp NOT NULL,
thread_title varchar(200) NOT NULL,
thread_content text NOT NULL,
nb_view integer NOT NULL default '0',
nb_post integer NOT NULL default '1',
last_post_date timestamp NOT NULL,
last_post_login varchar(70) NOT NULL,
CONSTRAINT sqmf_thread_pk PRIMARY KEY (thread_id)
);
CREATE INDEX sqmf_thread_idx
ON sqmf_thread
USING BTREE (forum_id);
Note: in PostgreSQL datetime is timestamp.
Also sqmf_stat_pk, sqmf_stat_uq, sqmf_thread_pk and sqmf_thread_idx are
just suggested names, but all constraint & index names must be unique
https://www.postgresql.org/docs/9.6/static/sql-createtable.html
In the futuire, please include PostgreSQL version & O/S
--
*Melvin Davidson*
I reserve the right to fantasize. Whether or not you
wish to share my fantasy is entirely up to you.
From | Date | Subject | |
---|---|---|---|
Next Message | Igal @ Lucee.org | 2017-12-24 20:54:46 | Re: Scheme conversion MySQL to PGSQL |
Previous Message | Andreas Kretschmer | 2017-12-24 18:18:04 | Re: Scheme conversion MySQL to PGSQL |