USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Inserir registro e pegar o ID?
Tamanini
não registrado
Postada em 25/01/2005 09:27 hs   
Quero salvar um registro e pegar o ID deste que foi gerado:strSQL = "INSERT INTO DMCHistRun (DMCNo,"strSQL = strSQL & " NSec, Data, Descricao, Bitola, mmPol,"strSQL = strSQL & " Cubagem, AnoMesDia, Hora, NLeit, NInt,"strSQL = strSQL & " Run)VALUES(" & DmcNum & ","strSQL = strSQL & " " & NSecNum & ",'" & DataImp & "','" & DescImporta & "','" & BitolaImp & "','" & mmPolImp & "',"strSQL = strSQL & " '" & CubagemImp & "','" & AnoMesDiaImp & "','" & HoraImp & "'," & NLeitImp & "," & NIntImp & ","strSQL = strSQL & " " & False & ")"dbDados.Execute strSQLstrSQL = "SELECT DMCId FROM DMCHistRun WHERE Descricao = '" & DescImporta & "' AND Run = " & FalseSet rstMovimentos = New ADODB.RecordsetrstMovimentos.CursorLocation = adUseClientrstMovimentos.Open strSQL, dbDados, adOpenKeyset, adLockReadOnlySetDMCID = rstMovimentos.Fields(0) '("DMCId")rstMovimentos.CloseExiste outra maneira, tipo com apenas um sql inserir e pegar o id que foi gerado deste registro?[]'s,Marcelo Tamanini
     
Gboese
SANTO ANDRÉ
SP - BRASIL
ENUNCIADA !
Postada em 25/01/2005 10:15 hs            
Tamanini
 
Use o comando max. Este comando seleciona o registro máximo, ou seja, o último registro incluído.
 
sql = "Select max(id) as id  from tabela"
rs.open sql,cn
 
campo = rs!id
 
rs.close
   
Tamanini
não registrado
ENUNCIADA !
Postada em 25/01/2005 10:28 hs   
OK! Mas de qualquer forma, ainda terei que utilizar 2 SQL, um para inserir e depois selecionar o ID deste que acabei de inserir! Não tem como mesmo?
   
Tamanini
não registrado
ENUNCIADA !
Postada em 25/01/2005 15:27 hs   
up!
   
Tamanini
não registrado
Postada em 26/01/2005 08:25 hs   
up
     
tomprata
JUIZ DE FORA
MG - BRASIL
Postada em 27/01/2005 09:24 hs            
olá,
o max pode ser meio perigoso num ambiente multiusuario.......
a função abaixo é mais segura
Public Function PegaUltimoID() AS Long
    'pega o numero do ultimos autonumercao inserido
    
    Dim Rst As New ADODB.Recordset
    Rst.Open ("SELECT @@IDENTITY"), Cnn, adOpenForwardOnly, adLockReadOnly, adCmdText
    PegaUltimoID = Rst(0)
    Rst.close    
    
End Function
     
Página(s): 1/2      PRÓXIMA »


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página