creio que algo assim seria um pouco mais simples :

CREATE TABLE teste_1
(
    teste1 serial,
    teste2 varchar,
    teste3 varchar,
    teste4 varchar,
    teste5 date default current_date
);

Att:

Thiago Risso


insert into teste_1(teste1,teste2,teste3,teste4) SELECT nextval('teste_1_teste1_seq'),cod,nome,'1' FROM alunos;



On 11/11/06, Nabucodonosor Coutinho <[EMAIL PROTECTED]> wrote:
a syntaxe disso em plpgsql seria mais ou menos assim:

create or replace function( definir arqui os parametros) returns bool as $$
declare
     -- declarar alguma variavel aqui
     reg record; -- aqui tah um exemplo de variavel
begin

    for reg in
        select desc_proxy_filtros_padroes
        from tb_proxy_filtros_padroes
        WHERE cod_proxy_filtros_cat = 3
    loop
        insert into tb_proxy_filtros (
              cod_proxy_filtros,
              cod_proxy_grupos,
              cod_proxy_filtros_cat,
             desc_proxy_filtros)
        VALUES (
             nextval('sq_proxy_filtros'),
             1,
             3,
             reg.desc_proxy_filtros_padroes);
    end loop;

    return true;

end;
$$ language 'plpgsql'

2006/11/10, Matheus Cucoloto <[EMAIL PROTECTED] >:
> Valeu, funcionou Perfeitamente!
>
> Em 10/11/06, Osvaldo Rosario Kussama<[EMAIL PROTECTED]> escreveu:
> > Matheus Cucoloto escreveu:
> > > Olá,
> > > existiu a necessidade de eu fazer um select em um insert.
> > > poderia resolver fazendo este insert
> > >
> > > insert into tb_proxy_filtros (cod_proxy_filtros, cod_proxy_grupos,
> > > cod_proxy_filtros_cat, desc_proxy_filtros)
> > > VALUES (nextval('sq_proxy_filtros'), 1, 3,(select
> > > desc_proxy_filtros_padroes from tb_proxy_filtros_padroes WHERE
> > > cod_proxy_filtros_cat = 3))
> > >
> > > só que neste caso o select vai retornar varias linhas eu pensei em
> > > fazer o select e depois um for ou while, tem como fazer isso em uma
> > > função ou trigger??? como q é a sintax?
> > >
> >
> >
> > Sim.
> >
> > Dentre as linguagens que você pode escolher para escrever sua função vou
> > presumir a utilização da PL/pgSQL.
> > http://www.postgresql.org/docs/8.1/interactive/plpgsql.html
> >
> > Você vai utilizar um FOR:
> > http://www.postgresql.org/docs/8.1/interactive/plpgsql-control-structures.html#PLPGSQL-RECORDS-ITERATING
> > e a execução de comandos dinâmicos:
> > http://www.postgresql.org/docs/8.1/interactive/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN
> >
> > Veja os exemplos no manual.
> >
> > []s
> > Osvaldo
> >
> >
> > _______________________________________________________
> > Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. Registre seu aparelho agora!
> > http://br.mobile.yahoo.com/mailalertas/
> >
> >
> > _______________________________________________
> > Grupo de Usuários do PostgreSQL no Brasil
> > Antes de perguntar consulte o manual
> > http://pgdocptbr.sourceforge.net/
> >
> > Para editar suas opções ou sair da lista acesse a página da lista em:
> > http://pgfoundry.org/mailman/listinfo/brasil-usuarios
> >
>
>
> --
>
> Matheus Cucoloto
> Administrador de Redes
> _______________________________________________
> Grupo de Usuários do PostgreSQL no Brasil
> Antes de perguntar consulte o manual
> http://pgdocptbr.sourceforge.net/
>
> Para editar suas opções ou sair da lista acesse a página da lista em:
> http://pgfoundry.org/mailman/listinfo/brasil-usuarios
>


--
Nabucodonosor Coutinho
Database Administrator
Accu Hosting - www.accuhosting.com
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
Antes de perguntar consulte o manual
http://pgdocptbr.sourceforge.net/

Para editar suas opções ou sair da lista acesse a página da lista em:
http://pgfoundry.org/mailman/listinfo/brasil-usuarios

Responder a