Obtener uniqueidentifier despues de insert

08/09/2005 - 09:09 por alfonso | Informe spam
Hola! Tengo una duda que me está volviendo loco. Llevo muchas horas
tratando de encontrar una respuesta que seguro que para vosotros es algo
muy fácil pero es que yo no tengo ni idea.

Mi problema viene cuando inserto en una tabla un nuevo registro con un
identificador generado automáticamente, e intento obtener el valor de
dicho identificador nuevamente, para insertar otro registro en otra tabla.

Tengo este código:
-
Set conexion = Server.CreateObject("ADODB.Connection")
conexion.ConnectionString = BlaBlaBla 'Es un ejemplo
conexion.Open

Set citas = Server.CreateObject("ADODB.Recordset")
citas.ActiveConnection = conexion

fecha = "20050916 20:00:00"
lugar = "mi casa"

strSQL = "DECLARE @GUID uniqueidentifier "
strSQL = strSQL + "SET @GUID = NEWID() "
strSQL = strSQL + " INSERT INTO citas (id_cita, fecha, lugar) VALUES
(@GUID, '"&fecha&"', '"&lugar&"') "
strSQL = strSQL + " SELECT id_cita FROM citas WHERE id_cita = @GUID"
citas.Source = strSQL
citas.CursorType = 0
citas.CursorLocation = 2
citas.LockType = 1
citas.Open()

response.write citas.Field.Item("id_cita").Value 'linea 101

-

El error que obtengo es:

"No se encontró el elemento en la colección que corresponde con el nombre
o el ordinal pedido.

/citas/citaanadir.asp, línea 101"


Lo que quiero es obtener el valor de '@GUID' generado, para poder usarlo
en código ASP, algo así como:

id_cita = @GUID
Response.Write(id_cita) 'Se que esto no funciona pero es para que me
entendais

Y una vez que tenga ese valor, puedo realizar otro insert:

"INSERT INTO citas_clientes (id_cita, id_cliente) VALUES ('"&id_cita&"',
'"&id_cliente&"')"

Un saludo y muchas gracias
 

Leer las respuestas

#1 alfonso
08/09/2005 - 09:35 | Informe spam
Por cierto, aqui hay un mensaje en un foro donde responden algo muy
similar, por no decir lo mismo... pero mi duda no la resuelven:

http://www.sqlteam.com/forums/topic...OPIC_IDY11

Preguntas similares