Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Pensa

Como fazer um INSERT e logo depois pegar o ID

Recommended Posts

Seguinte... Em uma página "teste.asp" tenho um comando SQL que insere um registro de um pedido.....nessa mesma página eu gostaria de pegar o ID criado por esse registro que acabei de incluir para leva-lo para a próxima página... entendeu?!No momento eu faço de um jeito que não acho muito seguro que é fazer um SELECT pedindo todos os pedidos que tiverem os campos que acabei de incluir.... mas não é muito legal pois é difícil mas não impossível que tenham dois pedidos exatamente iguais........ do mesmo cliente, dos mesmos produtos, com o mesmo valor, etc....alguém sabe como posso fazer isso em ASP ou em SQL?Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seguinte... Em uma página "teste.asp" tenho um comando SQL que insere um registro de um pedido.....nessa mesma página eu gostaria de pegar o ID criado por esse registro que acabei de incluir para leva-lo para a próxima página... entendeu?!No momento eu faço de um jeito que não acho muito seguro que é fazer um SELECT pedindo todos os pedidos que tiverem os campos que acabei de incluir.... mas não é muito legal pois é difícil mas não impossível que tenham dois pedidos exatamente iguais........ do mesmo cliente, dos mesmos produtos, com o mesmo valor, etc....alguém sabe como posso fazer isso em ASP ou em SQL?Valeu!

SELECT MAX(id) FROM tabela WHERE [condição]

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%s = "select * from tabela ORDER BY id DESC"set rs = suaconexao.Execute(s)rs.MoveFirstiID = rs("id")rs.Closeset rs = nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu citei o Select Max() porque assim você não pega muita coisa do banco, o que deixa o seu script mais leve. Mas esse geito também funciona.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Imaginem se um outro usuário terminou seu cadastro 1 milissegundo após nosso amigo, e por um pequeno delay no server ele retorne a compra de outro?

 

Use um "Select Top 1 * From tabela Where dados_do_usuário Order By ID Desc", onde dados_do_usuário deve ser um campo de identificação do usuário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu todo mundo...... é mais ou menos isso que vocês disseram que estou fazendo..... só para garantir tem também um campo com data e hora para fazer a comparação e pegar o registro certo....Eu tava imaginando se não existe nenhum comando SQL que faça um INSERT e um SELECT na mesma query... será que existe isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na mesma query não. Agora, sobre a questão da comparação entre datas, faz uma "busca" aqui no fórum ASP (between) , tenho certeza que você. vai encontar um vasto material sobre esse assunto, ok? Qualquer dúvida, dá um toque...abs,rodrigofaria

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.