SQL Server
SQL Server es el motor de base de datos relacional de Microsoft. En Gredit, esta integración permite conectarse a una instancia de SQL Server para ejecutar consultas SQL desde los guiones mediante ODBC y el driver FreeTDS.
Para qué se usa
Configurar una conexión a SQL Server para que los guiones puedan ejecutar consultas SQL y leer o escribir datos en una base de datos relacional Microsoft.
Configuración
Datos necesarios
| Dato | Descripción |
|---|---|
Host | Dirección del servidor SQL Server (IP o hostname) |
Database | Nombre de la base de datos |
Port | Puerto de conexión (por defecto: 1433) |
Username | Usuario de conexión |
Password | Contraseña del usuario |
TDS_Version | Versión del protocolo TDS (debe ser 7.4) |
Trace | Habilitación de trazas (debe ser no) |
Alta de la base de datos en Gredit
- Ir a la sección de Bases de datos y crear una nueva configuración.
- Completar los datos de host, base de datos, puerto, usuario y contraseña.
- En Controlador, usar
FreeTDS. - En Propiedades, agregar el atributo
TDS_Versioncon el valor7.4. - En Propiedades, agregar el atributo
Tracecon el valorno. - El valor de Nombre será el identificador para inyectar la conexión en los guiones.

Uso en guiones
Ruby
require 'odbc_utf8'
con = ODBC.connect('TestSQLServer')
stmt = con.run('SELECT id, nombre FROM usuarios')
columns = stmt.columns.keys.map(&:to_s)
stmt.each do |row|
h = columns.zip(row).to_h
puts h['nombre'] || h['NOMBRE'] || h['Nombre']
end
stmt.drop
con.disconnect
Python
Agregar la librería
pyodbcen Bibliotecas del guión.

import pyodbc
cnxn = gredit.connect('TestSQLServer')
cursor = cnxn.cursor()
cursor.execute("SELECT id, nombre FROM usuarios")
columns = [col[0].strip() for col in cursor.description]
rows = cursor.fetchall()
for r in rows:
h = dict(zip(columns, r))
print(h["nombre"])
cursor.close()
cnxn.close()
Relación con otros módulos
- Cuentas: La conexión de SQL Server pertenece a una cuenta.
- Guiones: Puede asociarse a uno o varios guiones de forma opcional.
- Permisos: Se controla por roles y permisos asignados.