Re: Retrieve columntypes and checks?
От | Oliver Fromme |
---|---|
Тема | Re: Retrieve columntypes and checks? |
Дата | |
Msg-id | 200410281308.i9SD84MC044551@lurza.secnetix.de обсуждение исходный текст |
Ответ на | Retrieve columntypes and checks? (Jesper Krogh <jesper@krogh.cc>) |
Ответы |
Re: Retrieve columntypes and checks?
|
Список | pgsql-novice |
Jesper Krogh wrote: > Trying to convert an application from MySQL to PostgreSQL I ran into > some troubles.. > > In MySQL is it quite easy to find out which type a column is.. in > particular if a column is an "enum" so the webapplication can do > appropiate checks in javascript in advance for an insert. > > In PostgreSQL the enum's are converted to varchar with checks, so I need > to get a hold on the column-type and if it's a varchar parse the check > string for values.. > > How do I do that? > > Any better suggestions? Instead of using a check string, put the possible values of the "enum" into a separate table, and define the varchar column to be a foreign key into that table. (If you're not familiar with the concept of foreign keys, please read the appropriate section in the PostgreSQL docs. Foreign keys are an extremely useful thing.) Two advantages of that approach: - PostgreSQL will automatically perform the checks, so you don't have to do any checking yourself. - If you want to perform checks yourself (e.g. in a GUI frontend), you can simply retrieve all valid values by SELECTing from the "enum table". Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co KG, Oettingenstr. 2, 80538 München Any opinions expressed in this message may be personal to the author and may not necessarily reflect the opinions of secnetix in any way. "UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things." -- Doug Gwyn
В списке pgsql-novice по дате отправления: