Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/12/2010, 01:06
wwwmaster
 
Fecha de Ingreso: noviembre-2002
Ubicación: DF
Mensajes: 1.056
Antigüedad: 21 años, 5 meses
Puntos: 37
Respuesta: Conectar a db2

Yo trabajo con iSeries (llamado AS400 anteriormente), en efecto DB2 tiene lo que se conoce como NOMBRE DE BASE DE DATOS, asi como bibliotecas, pero en realidad, al realizar una conexion x default te conecta a la "DATABASE", no he visto un cliente que genere una "database" con diferente nombre a la de default (q no recuerdo el nombre), asi que no necesitas realizar una conexion especifica con el nombre de la base de datos.

Unicamente requieres la "IP" del iSeries para realizar la conexion (ademas del usuario y pwd de acceso).

Las bibliotecas son "contenedores" de informacion que puede ser: a) Programas b) datos (en tablas e indices), por hacer una analogia, las bibliotecas son como las carpetas en windows, de hecho, si te conectas con un explorador como iSeries Navigator desde windows, la representacion de las bibliotecas es exactamente la de una carpeta.

Con la diferencia que una biblioteca no puede contener a otra biblioteca.

Dentro de las bibliotecas entonces se encuentras los "archivos", que son siempre archivos de datos, pero la diferencia radica en que algunos de esos archivos contienen los "programas fuente" y otros archivos contienen los datos (o las tablas)

Asi, para acceder a una tabla imaginaria de empleados x SQL a DB2, luego de hacer la conexion seria algo como:
"SELECT * FROM nombre_de_biblioteca/empleados"
o bien
"SELECT * FROM nombre_de_biblioteca.empleados"

(la nomenclatura difiere en cuanto a como este configurado algo en el acceso, pero puedes probar de las 2 maneras).

Podrias tambien recuperar algo como:
"SELECT * FROM empleados"
en este caso no se especifica la biblioteca, asi que es forzoso que dicha tabla este en la LISTA DE BIBLIOTECAS que tiene asignado el usuario y pwd con que te conectas ("user profile" se llama al usuario de conexion en iSeries"

Llendonos al caso mas extremo, te decia que los archivos pueden contener programas fuente o codigo de programacion, normalmente en iSeries se programa con el lenguaje RPG, el cual se coloca dentro de un archivo (normalmente algo como QRPGLESRC) dentro de una biblioteca, asi, puedes incluso recuperar el codigo fuente de un programa especifico con algo como:

SELECT * FROM NOMINASRC/QRPGLESRC/ALTAEMPLEADOS
o
SELECT * FROM NOMINASRC/QRPGLESRC(ALTAEMPLEADOS)

no es algo util, pero te permite visualizar que tambien los programas RPG se manejan como tablas dentro de las bibliotecas (en este caso, "ALTAEMPLEADOS" es un "miembro fuente" o programa escrito en RPG dentro de la biblioteca NOMINASRC

Para el caso de tu proyecto, es forzoso que tu cliente o el administrador de iSeries te de el NOMBRE DE LA BIBLIOTECA donde estan tus tablas, o bien que te garantice que el usuario y pwd con que te conectas (user profile) tenga en su "lista de bibliotecas" aquella donde estan tus datos.