Integración del control de código fuente de base de datos SQL en Microsoft Fabric
Se aplica a:✅bases de datos SQL en Microsoft Fabric
En este tutorial, aprenderá a trabajar con la base de datos SQL en Fabric con el control de código fuente de integración de Git de Fabric.
Una base de datos SQL en Microsoft Fabric tiene integración de control de código fuente o "integración de Git", que permite a los usuarios de SQL realizar un seguimiento de las definiciones de sus objetos de base de datos a lo largo del tiempo. Esta integración permite a un equipo:
- Confirmar la base de datos en el control de código fuente, que convierte automáticamente la base de datos activa en código en el repositorio de control de código fuente configurado (como Azure DevOps).
- Actualizar los objetos de base de datos del contenido del control de código fuente, que valida el código en el repositorio de control de código fuente antes de aplicar un cambio diferencial a la base de datos.
Si no está familiarizado con Git, estos son algunos recursos recomendados:
- ¿Qué es Git?
- Módulo de aprendizaje: Introducción a Git
- Tutorial: Administración del ciclo de vida en Fabric
En este artículo se presentan una serie de escenarios útiles que se pueden usar individualmente o en combinación para administrar el proceso de desarrollo con una base de datos SQL en Fabric:
- Convertir la base de datos SQL de Fabric en código en el control de código fuente
- Actualizar la base de datos SQL de Fabric desde el control de código fuente
- Crear un área de trabajo de rama
- Combinar los cambios de una rama en otra
Los escenarios de este artículo se tratan en un episodio de Datos expuestos. Vea el vídeo para obtener información general sobre la integración del control de código fuente en Fabric:
Requisitos previos
- Necesita una capacidad de Fabric existente. Si no tiene, inicie una versión de prueba de Fabric.
- Asegúrese de Habilitar la base de datos SQL en la configuración del inquilino de Fabric.
- Asegúrese de Habilitar la configuración del inquilino de integración de Git.
- Crear una nueva área de trabajo o usar una área de trabajo existente de Fabric.
- Cree o utilice una base de datos SQL de Fabric existente. Si aún no tiene una, crear una nueva base de datos SQL en Fabric.
- Opcional: instale Visual Studio Code, la extensión mssql y la extensión de proyectos SQL para VS Code.
Configurar
Esta conexión de repositorio se aplica en el nivel de área de trabajo, de modo que una sola rama del repositorio esté asociada a esa área de trabajo. El repositorio puede tener varias ramas, pero solo el código de la rama seleccionada en la configuración del área de trabajo afectará directamente al área de trabajo.
Para conocer los pasos para conectar el área de trabajo a un repositorio de control de código fuente, consulte Introducción a la integración de Git. El área de trabajo se puede conectar a un repositorio remoto de Azure DevOps o GitHub.
Adición de la base de datos SQL de Fabric al control de código fuente
En este escenario, confirmará los objetos de base de datos en el control de código fuente. Es posible que esté desarrollando una aplicación en la que va a crear objetos directamente en una base de datos de prueba y realizar un seguimiento de esa base de datos en el control de código fuente, al igual que el código de la aplicación. Como resultado, tiene acceso al historial de las definiciones de los objetos de base de datos y puede usar conceptos de Git como la bifurcación y la combinación para personalizar aún más el proceso de desarrollo.
- Conéctese a la base de datos SQL en el editor de SQL de Fabric, SQL Server Management Studio, la extensión mssql con Visual Studio Code u otras herramientas externas.
- Cree una tabla, un procedimiento almacenado u otro objeto en la base de datos.
- Seleccione el menú
...
de la base de datos y seleccione Actualizar estado de sincronización de Git. - Seleccione el botón Control de código fuente para abrir el panel Control de código fuente.
- Active la casilla situada junto a la base de datos deseada. Seleccione Confirmar. El servicio Fabric lee las definiciones de objeto de la base de datos y las escribe en el repositorio remoto.
- Ahora puede ver el historial de objetos de base de datos en la vista de origen del repositorio de código.
A medida que sigue editando la base de datos, incluida la edición de objetos existentes, puede confirmar esos cambios en el control de código fuente siguiendo los pasos anteriores.
Actualizar la base de datos SQL de Fabric desde el control de código fuente
En este escenario, creará objetos de base de datos como código en la extensión de proyectos de SQL en VS Code y, a continuación, confirmará los archivos en el control de código fuente antes de actualizar la base de datos SQL de Fabric desde la integración del control de código fuente. Este escenario está dirigido a desarrolladores que prefieren trabajar en VS Code, tener aplicaciones existentes mediante proyectos de SQL o tener requisitos de canalización de CI/CD más avanzados.
- Asegúrese de que ha instalado la versión más reciente de VS Code y las extensiones de proyectos mssql y SQL para VS Code.
- Cree una nueva base de datos SQL en el área de trabajo y confírmela en el control de código fuente sin agregar ningún objeto. Este paso agrega los metadatos vacíos del proyecto SQL y del elemento de base de datos SQL al repositorio.
- Clone el repositorio de control de código fuente de ejemplo en la máquina local.
- Si usa Azure DevOps, seleccione el menú contextual
...
para el proyecto de control de código fuente. Seleccione Clonar para copiar el repositorio de Azure DevOps en la máquina local. Si no está familiarizado con Azure DevOps, consulte la guía Codificar con Git para Azure DevOps. - Si usa GitHub, seleccione el botón Código del repositorio y copie la dirección URL para clonar el repositorio en el equipo local. Si no está familiarizado con GitHub, consulte la guía de clonación de un repositorio.
- Si usa Azure DevOps, seleccione el menú contextual
- Abra la carpeta clonada en Visual Studio Code. Es posible que la rama asociada al área de trabajo no sea la predeterminada. Debería ver una carpeta denominada
<yourdatabase>.SQLDatabase
en VS Code después de cambiar la rama. - Cree un archivo
.sql
para al menos una tabla que desee crear en la base de datos dentro de la estructura de carpetas de la base de datos. El archivo debe contener la instrucciónCREATE TABLE
para la tabla. Por ejemplo, cree un archivo JSON denominadoMyTable.sql
en la carpetadbo/Tables
con el siguiente contenido:CREATE TABLE dbo.MyTable ( Id INT PRIMARY KEY, ExampleColumn NVARCHAR(50) );
- Para asegurarse de que la sintaxis es válida, podemos validar el modelo de base de datos con el proyecto SQL. Después de agregar los archivos, use la vista Proyectos de base de datos en VS Code para Compilar el proyecto.
- Después de una compilación correcta, realice la acción de Confirmar los archivos al control de código fuente con la vista de control de código fuente en VS Code o la interfaz Git local preferida.
- Inserte o sincronice la confirmación en el repositorio remoto. Compruebe que los nuevos archivos han aparecido en Azure DevOps o GitHub.
- Vuelva a la interfaz web de Fabric y abra el panel Control de código fuente en el área de trabajo. Es posible que ya tenga una alerta acerca de que "tiene cambios pendientes de Git". Seleccione el botón Actualizar (actualizar todo) para aplicar el código del proyecto SQL a la base de datos.
- Es posible que vea que la base de datos indica inmediatamente que está "No confirmada" después de la actualización. Esto se debe a que la característica de integración de Git realiza una comparación directa de todo el contenido de archivo generado para una definición de elemento y se pueden realizar algunas diferencias involuntarias. Un ejemplo son los atributos insertados en columnas. En estos casos, deberá volver a confirmar el control de código fuente en la interfaz web de Fabric para sincronizar la definición con lo que se genera como parte de una operación de confirmación.
- Una vez completada la actualización, use una herramienta de su elección para conectarse a la base de datos. Los objetos que agregó al proyecto SQL visible en la base de datos.
Nota:
Al realizar cambios en el proyecto SQL local, si hay un error de sintaxis o el uso de características no admitidas en Fabric, se producirá un error en la actualización de la base de datos. Debe revertir manualmente el cambio en el control de código fuente para poder continuar.
Crear un área de trabajo de rama
En este escenario, configurará un nuevo entorno de desarrollo en Fabric haciendo que Fabric cree un conjunto duplicado de recursos en función de la definición de control de código fuente. La base de datos duplicada incluirá los objetos de base de datos que hemos protegido en el control de código fuente. Este escenario está dirigido a los desarrolladores que continúan su ciclo de vida de desarrollo de aplicaciones en Fabric y usan la integración del control de código fuente de Fabric.
- Complete el escenario Convertir la base de datos SQL de Fabric en código en el control de código fuente.
- Debe tener una rama en un repositorio de control de código fuente con un proyecto de SQL y los metadatos del objeto Fabric.
- En el área de trabajo de Fabric, abra el panel de control de código fuente. En la pestaña Ramas del menú Control de código fuente, seleccione Ramificar hacia una nueva área de trabajo.
- Especifique los nombres de la rama y del área de trabajo que se crearán. La rama se creará en el repositorio de control de código fuente y se rellenará con el contenido confirmado de la rama asociada al área de trabajo desde la que se va a bifurcar. El área de trabajo se creará en Fabric.
- Vaya al área de trabajo recién creada en Fabric. Cuando se completa la creación de la base de datos, la base de datos recién creada contiene ahora los objetos especificados en el repositorio de código. Si abre el editor de consultas de Fabric y navega en el Explorador de objetos, la base de datos tiene tablas nuevas (vacías) y otros objetos.
Combinar los cambios de una rama en otra
En este escenario, usará el repositorio de control de código fuente para revisar los cambios de la base de datos antes de que estén disponibles para la implementación. Este escenario está dirigido a desarrolladores que trabajan en un entorno de equipo y usan el control de código fuente para administrar los cambios de la base de datos.
Cree dos áreas de trabajo con ramas asociadas en el mismo repositorio, tal como se describe en el escenario anterior.
- Con la base de datos de la rama secundaria, realice cambios en los objetos de base de datos.
- Por ejemplo, modifique un procedimiento almacenado existente o cree una nueva tabla.
- Compruebe estos cambios en el control de código fuente con el botón Confirmar en el panel de control de código fuente de Fabric.
- En Azure DevOps o GitHub, cree una solicitud de incorporación de cambios de la rama secundaria a la rama principal.
- En la solicitud de incorporación de cambios, puede ver los cambios en el código de la base de datos entre el área de trabajo principal y el área de trabajo secundaria.
- Una vez completada la solicitud de incorporación de cambios, el control de código fuente se actualiza, pero la base de datos de Fabric en el área de trabajo principal no cambia. Para cambiar la base de datos principal, actualice el área de trabajo principal del control de código fuente mediante el botón Actualizar del panel de control de código fuente de Fabric.