Só um pitaco...

Se você além de controlar o usuário, controlar também o endereço do qual
chamou, vai lhe dar uma exatidão maior sobre o registro.

[]´s


Em 21 de outubro de 2015 12:03, Eduardo Az - EMBRASIS <
[email protected]> escreveu:

> Pessoal,
> Pesquisei muito e não entrei da forma que estou procurando.
> Imaginem a seguinte situação, muito comum, mas, quero ver se existe alguma
> solução mais "elegante" que me auxilie.
>
> 2 tabelas
>
> tab PEDIDOS
>
> id serial  -> PK
> nome_cliente text
> dt timestamp
> funcionario int
>
>
> tab PEDIDOS_itens
>
> pedido  int -> PK  (referenciando ID da tabela PEDIDOS)
> produto int -> PK
> qtde int
> valor real
>
> Não vou entrar em questionamento da criação da tabela. É um exemplo.
>
> Sem pensar muito, sigo a seguinte lógica:
> -incluo no banco de dados o registro da tab PEDIDOS
> -como ID é serial, via select vejo o ultimo registo com o max()
> -uso o resultado para incluir os itens na tabela PEDIDOS_itens, junto com
> o código de produto.
>
> Pois bem, porem, esta situação é bem propicia para um programa de pedidos,
> nf ou outro que tenha um esquema parecido e que só 1 pessoa use por vez.
> Agora, quando vários usuários estão usando este sistema, o risco de usar
> códigos ID errados nos itens é muito grande.
> Ai vem a dúvida:
> Para tentar evitar isso, como nas tabelas eu cadastro também quem está
> operando (funcionario), eu faço um filtro selecionando o ultimo que ele
> incluiu e o resultado utilizo.
> Lógico que tudo pode acontecer. Já tive caso de pessoas usarem a senha das
> outras etc.
>
> o pg possui algo que me auxilie?
>
> tenho puco conhecimento em pl/sql, mas, quero criar um procedimento para
> isso.
> Estou no caminho correto?
> Imagino que dentro de um procedimento, vou estar "isolado"
> E teria alguma função que me retornaria o conteúdo do ultimo registro
> adicionado?
>
>
> Eduardo Az
>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>



-- 
Mello Júnior
41.3252-3555
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a