En cada sesión de trabajo, el SQL tiene sus propios atributos.
Si despues de arrancar el SQL, pulsas Mandato 21 puedes ir a cambiar los
atributos de esa sesión, entre los cuales está la lista de bibliotecas que
utiliza.
Saludos
Emilia Esteban Cañibano
DEP. INFORMÀTICA. ANALISTA
Via Laietana, 20 àtic - 08003 Barcelona
Tel. 93 507 36 40 Fax 93 295 63 12
[email protected]
[email protected] escribió: -----
Para: [email protected]
De: Íñigo Redín <[email protected]>
Enviado por: [email protected]
Fecha: 08/10/2010 12:23
Asunto: Sobre STRSQL y la lista de bibliotecas
Hola. Primero me presento, que soy nuevo en este foro.
Me llamo Íñigo, y trabajo en una empresa de seguros en la que tenemos un
ISeries instalado, corriendo La V5R4M0.
Mi pregunta es sobre el mandatos STRSQL.
Bueno, en realidad, no es sólo sobre eso, pero, es un principio.
He visto que, desde hace un tiempo, cuando ejecuto el mandato STRSQL, al hacer
una simple sentencia SELECT, no me coge la lista de bibliotecas del sistema,
sino, sólo la primera en la lista de bibliotecas (de usuario).
Normalmente suele ser QTEMP (aunque no siempre, dependiendo del usuario que
utilice).
Pero, encima, he visto que, si arranco otra sesión con el mismo usuario, en
este caso SÍ me coge la lista de bilbiotecas del sistema, y va buscando la
tabla para la que hago el SELECT, en ella.
Lo pongo más gráfico.
1º sesión que arranco:
Lista bibl:
QTEMP
A
B
C
Hago un SELECT *FROM TABLA . Y TABLA sólo existe en la biblioteca B.
Me falla, ya que no existe en QTEMP.
Abro una nueva sesión, sin cerrar la anterior.
Hago lo mismo, y con el mismo usuario, y misma lista de bibliotecas. ¡Y
funciona!, ya que busca la tabla en la lista de bibliotecas.
He visto que, siempre me pasa con la misma sesión. O sea, que si entro con la
S1, me va mal, y con la S2, me va bien. Así que supongo que es algo que STRSQL
guarda, al estilo de los mandatos previos que hemos hecho 8del histórico).
Todo esto me servirá para, ir un paso adelante, ya que, tengo una serie de
procedimientos almacenados SQL, a los que le pasa lo mismo. Siempre busca las
tablas a las que se hace referencia en ellos en QTEMP, en lugar de hacerlo en
la lista de bibliotecas.
Por cierto, no puedo hacer un SET SCHEMA, o marcar un esquema por defecto, ya
que, al tener varios entornos de trabajo, no quiero que figure en un programa
la lista de bibliotecas del entorno, sino que ésta se coja por el usuario.
Y, además, quiero hacer la sentencia sin especificar biblioteca.
Resumiendo: ¿alguien sabe de dónde saca la lista de bibliotecas el mandato
STRSQL?
Muchas gracias.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.