28/12/2006, 03:11
|
| | Fecha de Ingreso: mayo-2006
Mensajes: 178
Antigüedad: 18 años, 7 meses Puntos: 3 | |
Re: Problema de concurrencia... Lo mejor a la hora de insertar ( y ver su ID autonumerico) es hacer una doble sentencia SQL:
Dim Id_Insertada As Integer
Dim MiSQL As String = "INSERT INTO Mensajes(IDUserOrigen,Fecha,Asunto) VALUES (@IDUserOrigen,@Fecha,@Asunto); SELECT ID FROM Mensajes WHERE ID = @@IDENTITY"
Dim cm As New SqlCommand(MiSQL, cn)
cm.Parameters.Add(New SqlParameter("@IDUserOrigen", SqlDbType.Int, 4)).Value = Session("IDUser")
cm.Parameters.Add(New SqlParameter("@Fecha", SqlDbType.DateTime, 8)).Value = Now()
cm.Parameters.Add(New SqlParameter("@Asunto", SqlDbType.NVarChar, 100)).Value = Textbox1.Text
cm.Connection.Open()
Try
Id_Insertada = CInt(cm.ExecuteScalar())
Catch ex As Exception
RegisterStartupScript("scripalert", "<script languaje=javascript> javascript:alert('Error:');</script>")
cm.Connection.Close()
Exit Sub
End Try
cm.Connection.Close()
En la variable Id_Insertada (de tipo int) tienes el ID de la tabla insertada. Espero que esto si te sirva de algo. Yo siempre lo empleo cada vez que inserto un registro nuevo y quiero ver su ID |