Feedback

# Conexión con Oracle ODBC

En Scriptcase, tenemos los siguientes controladores disponibles para la conexión a Oracle: Oracle PDO, Oracle 8.0.5 o Superior, Oracle ODBC e Oracle 8. Si está utilizando su propio entorno preconfigurado, las extensiones de Oracle deben habilitarse manualmente en PHP.

## Prerrequisitos

Antes de continuar con esta documentación, verifique su arquitectura PHP. Para que los controladores estén habilitados correctamente, los archivos deben descargarse de acuerdo con la arquitectura utilizada.

- En su Scriptcase, está el archivo info.php, acceda a él por la URL: `http://127.0.0.1:8092/scriptcase/info.php`, donde encontrará la información sobre la arquitectura en phpinfo().

> NOTA: Si está utilizando el instalador automático de Scriptcase, la arquitectura PHP será la misma que descargó. Descargue el cliente instantáneo de Oracle de acuerdo con su arquitectura PHP.

- Arquitectura i386/i686 = 32 bits
- Arquitectura x86_64 = 64 bits

A continuación se enumeran los archivos necesarios para que los controladores de Oracle estén habilitados.

### Archivos requeridos:

### x86_64

- Cliente Instantáneo Oracle 12.1.0.2(x86_64): clic Aqui

> IMPORTANTE: PHP 7.3 es compatible con Oracle Instant Client 11.2 o superior.
> Para descargar Oracle Instant Client anterior a la versión 19, es necesario tener una Cuenta Oracle.

### Otros archivos

- Cliente Instantáneo Oracle 12.2.0 or Higher: clic Aqui

### Tabla de Compatibilidad

Drive | Oracle Database Version |  |  |  |  |  |
--- | --- | --- | --- | --- | --- | --- | ---
Oracle 8.0.5 or Higher | 9i | 10g | 11g R1 | 11g R2(11.2) | 12c | 18c | 19c
Instant Client | Versión de base de datos Oracle |  |  |  |  |  |
19.6.0.0 | 9i | 10g | 11g R1 | 11g R2(11.2) | 12c | 18c | 19c

## Configuración de Oracle ODBC en MacOs

La instalación automática de Scriptcase viene con controladores de Oracle preconfigurados, y solo falta instant_client para configurar la conexión. Siga los pasos descritos a continuación para habilitar los controladores de conexión.

1 - En su terminal Mac, inicie sesión como root y cree la carpeta con el número del cliente instantáneo en `/usr/local/instantclient/12.1.0.2/`.

EJ:

- `mkdir -p /usr/local/instantclient/12.1.0.2/`

2 - Extraiga todo el contenido del Instant Client descargado anteriormente en su sistema Mac y copie en la carpeta creada en el paso anterior:

EX:

- `unzip oci_client_macosx_12.zip`
- `cp -avr __MACOSX/ oci_client_macosx_12/ /usr/local/instantclient/12.1.0.2/`

3 - Reinicie el servicio Apache Scriptcase para que los cambios surtan efecto. Use el siguiente comando para esto:

EJ:

`sudo /Applications/Scriptcase/v9-php81/components/apache/bin/apachectl restart`

## Crear una conexión en Scriptcase

Vea a continuación cómo crear una conexión en su proyecto Scriptcase, utilizando el controlador habilitado anteriormente y la base de datos Oracle.

1 - Acceda a un proyecto desde su Scriptcase.

2 - Haga clic en el icono Nueva conexión para crear una conexión.

o acceda al menú Base de datos > Nueva conexión.

Después de eso, aparecerá una pantalla con todas las conexiones de la base de datos.

3 - Seleccione la conexión Oracle.

### Conexión

Ingrese los parámetros para conectarse a su base de datos Oracle de la siguiente manera:

- Nombre de la conexión: Defina el nombre de su nueva conexión. De manera predeterminada, Scriptcase agrega el prefijo conn junto con el nombre de la base de datos.

- Driver de SGDB: Seleccione el controlador Oracle para conectarse. En este ejemplo, usamos el controlador Oracle ODBC.

- Nombre de la Base de datos: Ingrese el nombre de la fuente de datos creado en su administrador ODBC.
  - EX: `oracle`
- Esquema: Informar al Esquema de tablas específicas creadas para el uso del usuario informado.
  - Este elemento es opcional si no tiene un esquema configurado en su base de datos.
- Usuario: Ingrese el usuario para autenticar la conexión a su base de datos Oracle.
  - Para las conexiones Oracle, el usuario debe estar en mayúscula, como en el ejemplo.

- Contraseña: Ingrese la contraseña para completar el proceso de autenticación.

- Probar conexión: Haga clic en este botón para obtener una respuesta a la solicitud de Scriptcase para saber si los parámetros ingresados son correctos.

### Filtro

Al acceder a esta pestaña, puede configurar qué elementos de la base de datos se mostrarán en la conexión, dependiendo del propietario o no.

#### Mostrar

Permite que la conexión de Oracle vea tablas, vistas, tablas del sistema y procedimientos según los elementos seleccionados por el usuario.

- Tablas: Al seleccionar esta opción, se mostrarán las tablas en su base de datos.
  - Por defecto, Scriptcase habilita esta opción.
- Views: Al seleccionar esta opción, se mostrarán las vistas de su base de datos.
  - Por defecto, Scriptcase habilita esta opción.

- Tablas del sistema: Al seleccionar esta opción, se mostrarán las tablas del sistema de su base de datos.

- Procedures: Al seleccionar esta opción, se mostrarán los procedimientos de su base de datos.

#### Búsquedas

Le permite definir qué tablas y propietarios se muestran.

- Tablas: Puede definir en esta opción qué tablas se mostrarán. La configuración puede contener un `PREFIJO%` o el nombre de las tablas para mostrar.
  - Por defecto, Scriptcase deja esta opción vacía.
  - EX:

- Propietario: Ingresar el usuario que visualizara las tablas.
  - El usuario debe estar en mayúscula como en el ejemplo anterior.
- Mostrar: Elija si se mostrarán las tablas para el propietario informado.

> NOTA: Al usar el filtrado de tablas, elimina las tablas innecesarias para su proyecto lo cual mejora el rendimiento de su conexión de base de datos Oracle.

### Avanzado

En esta pestaña, tiene acceso a configuraciones específicas para la conexión. La configuración realizada en esta sesión afecta la visualización de datos y el rendimiento de la aplicación.

- client_encoding: Seleccione la codificación utilizada en su base de datos. En el ejemplo anterior, utilizamos la codificación de cliente UTF-8.
  - Por defecto, esta opción se deja en blanco por Scriptcase
- Separador decimal: Seleccione el caracter usado para los registros decimales, entre coma y punto.
  - Por defecto, el punto `.` se selecciona como separador .
- Conexión persistente: Defina si las conexiones terminarán después de la ejecución de sus scripts en las aplicaciones de Scriptcase.
  - Por defecto, Scriptcase deshabilita esta opción.
- Usar esquema antes del nombre de la tabla: Defina si el esquema de la base de datos se mostrará antes de los nombres de la tabla.

  - Por defecto, Scriptcase habilita esta opción.

  - E.g.

### SSH

Aquí están las opciones de SSH disponibles en la imagen y sus descripciones relacionadas con la conexión a la base de datos:

#### Utilice SSH

Habilita o deshabilita el túnel SSH para la conexión con la base de datos. Cuando está activado, la conexión a la base de datos se enruta a través del servidor SSH.

#### Servidor SSH

La dirección IP o el nombre del host del servidor SSH que se utilizará para el túnel. Esta es la máquina que actuará como un puente para acceder a la base de datos de forma segura.

#### Puerto SSH

El puerto utilizado para conectarse al servidor SSH. El puerto predeterminado de SSH es 22, a menos que se haya configurado de otra manera en el servidor.

#### Usuario SSH

El nombre de usuario utilizado para la autenticación en el servidor SSH. Este usuario debe tener permisos para establecer una conexión SSH.

#### Método de autenticación

Puede elegir dos opciones: contraseña o Arquivo de certificado privado. Al elegir una, aparecerá un nuevo campo a continuación para la configuración.

#### Archivo de certificado privado

El archivo de clave privada utilizado para la autenticación, en caso de que el servidor SSH requiera autenticación basada en clave en lugar de contraseña.

#### Puerto local para reenvío

El puerto local en la máquina cliente que se utilizará para reenviar el tráfico de la base de datos a través del túnel SSH. Este puerto actúa como un puente entre el cliente de la base de datos y la base de datos remota.

#### Servidor de base de datos desde SSH

El nombre del host o la dirección IP del servidor de base de datos visto desde el servidor SSH. Esto es necesario cuando la base de datos solo es accesible dentro de la red del servidor SSH.

#### Puerto de base de datos desdede SSH

El puerto del servidor de base de datos que será accesible a través del túnel SSH. Este puerto debe coincidir con el puerto de escucha del servicio de base de datos.

> Problemas de conexión o preguntas?

> Contacta con nuestro suporte en caso de problemas de conexión o preguntas sobre esta base de datos.