> For the complete documentation index, see [llms.txt](https://docs.gaiodataos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gaiodataos.com/gaio-dataos-spanish/~/revisions/ROTQdWDD4onGcUzj1hEL/herramientas/tareas/etl/source-sql.md).

# Source SQL

<figure><img src="/files/X4nK7zu3RQG7EyfCgFe0" alt=""><figcaption></figcaption></figure>

La tarea **Source SQL** permite ejecutar consultas SQL directamente sobre bases de datos conectadas a Gaio DataOS.

Es ideal para extraer, transformar o importar datos desde fuentes externas (como bases de datos relacionales) hacia tu proyecto, para ser utilizados en flujos de datos, análisis y dashboards.

***

### Cómo usar

***

### 1. Abrir la tarea

Navega a:\
**Tasks > ETL > Source SQL**

***

### 2. Seleccionar una base de datos

En el panel lateral izquierdo:

* Selecciona una base de datos previamente registrada en el entorno y habilitada para tu usuario.
* Una vez seleccionada, se mostrarán todas las tablas disponibles de esa fuente.

***

#### 3. Escribir el código SQL

En la pestaña **Code**:

* Escribe o pega tu consulta SQL.
* Puedes utilizar sintaxis SQL avanzada, incluyendo JOIN, WHERE, GROUP BY, CTEs, entre otras.

{% hint style="info" %}
Usa **Run query** para probar los resultados antes de guardar la tarea.
{% endhint %}

***

### 4. Configuración (pestaña Settings)

<figure><img src="/files/UjinoAfoWA0cbmCWQSAO" alt=""><figcaption></figcaption></figure>

* **Save on default repository:** Guarda el resultado de la consulta como una tabla en el repositorio local del proyecto.
* **Incremental mode:** Solo importa nuevos registros cuando sea aplicable.
* **Field as string:** Convierte todos los campos a texto.
* **Create an empty table when no data:** Crea la estructura de la tabla incluso si la consulta no devuelve datos.
* **Raw imports:** Importa los datos sin formateo automático.
* **Auto columns (solo JDBC):** Detecta automáticamente la estructura de columnas (solo para conexiones JDBC).
* **JSForce Bulk Mode (solo Salesforce):** Optimiza el rendimiento para importaciones masivas desde Salesforce.

{% hint style="warning" %}
Estas opciones son especialmente útiles para gestionar el esquema y el rendimiento en integraciones con bases de datos externas.
{% endhint %}

***

### 5. Pestaña Columns

* Esta pestaña solo está disponible si **Save on default repository** está habilitado.
* Permite definir manualmente los nombres y tipos de columnas para la tabla resultante, si no deseas que sean detectados automáticamente.

***

### 6. Guardar y ejecutar

* Haz clic en **Save** para agregar la tarea a tu flujo.
* Luego puedes vincular este paso con otras tareas (como transformación, visualización o exportación).

***

### Casos de uso

* Consultar datos en tiempo real desde una fuente externa (ej.: MySQL, PostgreSQL, Oracle, SQL Server).
* Importar datos de sistemas legados o ERP mediante SQL.
* Transformar datos antes de la ingesta directamente a través de SQL.
* Automatizar integraciones con bases de datos empresariales mediante consultas personalizadas.
