Re: Creating table columns from ???

Поиск
Список
Период
Сортировка
От Giles Lean
Тема Re: Creating table columns from ???
Дата
Msg-id 3636.991523825@nemeton.com.au
обсуждение исходный текст
Ответ на Creating table columns from ???  (Chadwick Rolfs <c2304182@webdevel.urban.csuohio.edu>)
Список pgsql-novice
> It seems that there is a missing function that would be very obvious and
> one of the first things available:
>   here's what I want to do:
>     create table form_two ( <file with names and values> );
>   or even better, from perl, or php (I am now using Pg.pm)
>     create table form_two ( %hash_with_names_and_values );
...
> (doesn't this seem a bit cumbersome?)

Well, you have to describe the table once, sometime, but it's source
code like the rest of your application -- no need to retype it:

     $ psql < file

If 'file' isn't quite in the 'create table ... ( ... )' syntax you
might need to process it first, but that's easy with a suitable
scripting language, and you mentioned perl already. :-)

In perl (and probably PHP) iterating over a hash building up a string
is also easy, so if you are starting from a perl hash something like
this works:

     $query = "create table T (";
     for $key (keys %hash) {
         $query .= "$comma $key $hash{$key}";
         $comma = ",";
     }
     $query .= ")";

     $dbh->do($query);

Hope that helps.

Regards,

Giles

В списке pgsql-novice по дате отправления:

Предыдущее
От: "Mohammed A"
Дата:
Сообщение: monitoring
Следующее
От: Nabil Sayegh
Дата:
Сообщение: Re: monitoring