RETORNAR AUTOINCREMENT
Boa tarde pessoal,
Eu uso VB6, ADO e Firebird, e minha dúvida hoje é o seguinte, no meu banco tem uma tabela com campo código integer autoincrement, quando insiro um novo registro ele gera um novo código automaticamente, esta função está funcionando, porém, eu gostaria de saber como faço para retornar o código que foi gerado. Eu quero que assim que eu adicione o registro na tabela, ela já me retorne o código que foi gerado para eu poder carregar os dados no fomulário.
Grato a quem puder ajudar.
Eu uso VB6, ADO e Firebird, e minha dúvida hoje é o seguinte, no meu banco tem uma tabela com campo código integer autoincrement, quando insiro um novo registro ele gera um novo código automaticamente, esta função está funcionando, porém, eu gostaria de saber como faço para retornar o código que foi gerado. Eu quero que assim que eu adicione o registro na tabela, ela já me retorne o código que foi gerado para eu poder carregar os dados no fomulário.
Grato a quem puder ajudar.
Basta vc dar um Order By desc e mandar mover para o ultimo registro.
Só muito cuidado com isso, não se esqueça que outro usuário pode estar fazendo a mesma coisa ao mesmo tempo.
A não ser que esse sistema não trabalhe em rede, o que para sistemas comercias, que acredito ser 99,9 % dos que aqui
atuam, são todos multi Usuário.
A não ser que esse sistema não trabalhe em rede, o que para sistemas comercias, que acredito ser 99,9 % dos que aqui
atuam, são todos multi Usuário.
JUNIORBINDACO mas será que essa seria a melhor alternativa, e em um ambiente com 50 usuários ? poderia retornar um código de outro registro.
Tente o RETURNING
Não realizei nenhum teste!
Veja se funciona, espero ter ajudado
TABELA
CODIGO AUTOINCREMENT
NOME VARCHAR
DTNASC DATE
sSQL = [Ô]INSERT INTO (NOME,DTNASC) VALUES ([ô]NOME NOME NOME[ô], [ô]07.27.2014[ô]) RETURNING CODIGO[Ô]
Dim rst As New ADODB.Recordset
Set rst = SeuObjConn.Execute(sSQL)
if rst.RecordCount > 0 then MsgBox [Ô]Seu Código é [Ô] & rst([Ô]CODIGO[Ô])
Set rst = Nothing
Não realizei nenhum teste!
Veja se funciona, espero ter ajudado
olha, eu faria uma funcao, retirando o autoincrement passando a calcular o codigo por conta propria, agora se vc quiser ver o seu ultimo codigo criado com o auto incremente, logo apos vc inserir a informacao de um select no banco novamente, tipo.. strsql=[Ô]select max(campoid) from tabela limit 1[Ô] o select max ira trazer o ultimo registro que foi inserido.. abraço.
E ai deu certo?
Se o problema foi resolvido, por favor encerre o tópico!
Se o problema foi resolvido, por favor encerre o tópico!
Tópico encerrado , respostas não são mais permitidas