Marco: 2017-04-18 1:06 GMT+02:00 Marco Vinicio Jimenez Rojas <vinici...@gmail.com>: > Tengo la siguiente transacción en la cual necesito utilizar el valor del > "returning id_roles" fuera de la transacción. todo funciona bien pero no me > sale ese dato por ningún lado
Cuando 'no te sale' que quieres decir? Eso parece un trozo de script medio pegado, si se lo metes al psql ¿ que hace / imprime ?. Nota, si estas usando algo tipo el pgAdmin este puede estar recibiendo el dato y no mostrarlo, pero para depurar esas cosas necesitarias contar exactamente la secuencia que usas y los programas y versiones ( el psql es mas sencillo para estos reports, lo arrancas, le pegas el query, imprimira algo, cortas el texto de la pantalla entera y lo pegas, por eso te lo digo ). > begin transaction; > with roles as( > insert INTO ovinos.roles VALUES(default,'prueba rol','el primer rol de > prueba',2) returning id_rol > ) > insert INTO ovinos.funciones_roles VALUES(4,(select roles.id_rol from > roles)), > (5,(select roles.id_rol from roles))returning id_roles; Parece correcto PERO no poner los nombres de las columnas en las que estas insertando es 1.- Pedir problemas a medio plazo y 2.- una dificultad añadida para que te digamos nada ya que no sabemos siquierea como se llaman las columnas en las tablas. Una prueba similar ( sin schemas ) me funciona sin problemas: http://sqlfiddle.com/#!15/92ae0/1/0 Y por el estilo del report esto tiene toda la pinta de ser problemas con la herramienta de queries que estas usando. > commit; > ROLLBACK TRANSACTION; ¿ Porque commit + rollback ? Francisco Olarte. - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripci�n: http://www.postgresql.org/mailpref/pgsql-es-ayuda