Diseñar una base de datos desde cero puede parecer intimidante, pero cuando combinas Supabase con su asistente de inteligencia artificial, el proceso se simplifica de forma notable. A continuación se explica paso a paso cómo se utilizó el Supabase AI Assistant para generar y ejecutar sentencias SQL automáticamente, creando todas las tablas necesarias para la web de un equipo de fútbol.
¿Qué es Supabase y por qué es relevante para tu backend?
Supabase es uno de los proveedores de backend más utilizados en el mundo tech. Está basado en Postgres, lo que significa que toda la interacción con la base de datos se realiza mediante SQL. La cuenta gratuita permite tener cualquier cantidad de proyectos, aunque solo dos pueden estar activos simultáneamente [01:06].
Dentro del panel de Supabase existe una herramienta clave: el Supabase AI Assistant, representado por un ícono verde junto al editor de SQL [01:30]. Este asistente permite interactuar con tu base de datos usando lenguaje natural, y en la versión gratuita trabaja con el modelo GPT-5 mini [02:22].
¿Cómo se configuran los permisos del asistente?
Al expandir el asistente por primera vez, solicita configurar permisos. Las opciones incluyen:
- Acceso completo a la base de datos.
- Acceso solo al esquema.
- Acceso a logs y esquema.
En el ejemplo se seleccionó acceso únicamente al esquema [01:49], lo cual es suficiente para crear y modificar tablas sin exponer datos sensibles.
¿Qué significa row-level security en Supabase?
Cuando el asistente genera sentencias SQL, incluye configuraciones de RLS (row-level security) [03:14]. Este mecanismo controla qué filas de una tabla puede leer o modificar cada usuario, añadiendo una capa de seguridad directamente a nivel de base de datos.
¿Cómo se generaron las tablas con el AI Assistant?
El punto de partida fue un plan generado previamente por Cloud Code dentro de Windsurf [03:30]. Ese plan dividía la información en dos bloques:
- CMS editorial: noticias, páginas, referencias de medios, sponsors y más.
- Base de datos deportiva: temporadas, competiciones, equipos, partidos y estadísticas.
Se copió el listado editorial y se pegó directamente en el asistente con la instrucción: "genera la sentencia para crear una tabla con estos elementos y diseña qué tipo de contenido debería tener si se trata de una web de un equipo de fútbol" [04:10].
¿Qué campos generó automáticamente el asistente?
Para la tabla de noticias, el asistente propuso campos como [04:32]:
- ID como identificador único.
- Título y slug para la URL amigable.
- Contenido y autor.
- Estatus con valor por defecto en draft (borrador).
- Featured para marcar una noticia como destacada.
- Tags o etiquetas de clasificación.
- Timestamps de creación, actualización y borrado.
Este patrón se repitió para cada tabla: páginas, eventos, productos, vistas de página y más.
¿Se ejecutaron las sentencias sin ir al editor de SQL?
Sí. Tras generar todos los snippets de código, el asistente los unificó en una sola sentencia SQL y preguntó si debía ejecutarla [05:26]. Al confirmar, creó todas las tablas directamente en el proyecto sin necesidad de copiar, pegar ni ejecutar manualmente cada instrucción [05:38].
¿Por qué el asistente creó las tablas en inglés?
Un detalle importante: el listado original estaba en español, pero el asistente nombró todas las tablas y columnas en inglés [06:02]. Eventos se convirtió en events, productos en products, páginas en pages. Esta es una buena práctica en bases de datos, ya que mantener los nombres en inglés facilita la integración con librerías, frameworks y equipos internacionales.
Al hacer clic en cualquier tabla desde el editor, se visualiza la estructura completa: campos, tipos de dato y valores por defecto, exactamente como los recomendó la sentencia generada [06:28].
La potencia de este flujo radica en que puedes diseñar tu esquema, modificar datos y gestionar casi cualquier interacción con tu backend en Supabase sin escribir SQL manualmente. Si ya probaste el AI Assistant, comparte tu experiencia y cuéntanos qué tablas generaste con él.