Hola
Si haces STRSQL+F4 te tiene que salir esta pantalla(te muestro sólo el
trozo que interesa), mirate la opción que te marco en rojo:
Arrancar sesión interact. SQL (STRSQL)
Teclee elecciones, pulse Intro.
Control de compromiso . . . . . *NONE *NONE, *CHG, *CS,
*ALL...
Convenio de denominación . . . . *SYS *SYS, *SQL
Proceso de sentencia . . . . . . *RUN *RUN, *VLD, *SYN
Opción de biblioteca . . . . . . *LIBL Nombre, *LIBL,
*USRLIBL..
Tipo de lista . . . . . . . . . *ALL *ALL, *SQL
Renovación de datos . . . . . . *ALWAYS *ALWAYS, *FORWARD
Permitir copiar datos . . . . . *YES *YES, *OPTIMIZE, *NO
Salut
Íñigo Redín <[email protected]>
Enviado por: [email protected]
08/10/2010 12:22
Por favor, responda a
"forum.help400" <[email protected]>
Para
[email protected]
cc
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.