Seguramente más de una vez habeis generado un script de una base de datos SQL Server. Con dicho script podemos regenerar una base de datos en otro entorno de forma sencilla.

En algunos escenarios puede ser muy útil incluir también los datos de dichos objetos de los que generamos el script  (tablas maestras por ejemplo). Desgraciadamente dicha opción no estaba presente en las versiones anteriores a Microsoft SQL Server 2008.

Con SQL Server 2008 tan solo tenemos que marcar la opción “Script Data” para que se nos generen también los “Insert” correspondientes 🙂

CREATE TABLE [dbo].[Roles](

      [RoleID] [uniqueidentifier] NOT NULL,

      [RoleName] [nvarchar](260) NOT NULL,

      [Description] [nvarchar](512) NULL,

      [TaskMask] [nvarchar](32) NOT NULL,

      [RoleFlags] [tinyint] NOT NULL,

 CONSTRAINT [PK_Roles] PRIMARY KEY NONCLUSTERED

(

      [RoleID] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

CREATE UNIQUE CLUSTERED INDEX [IX_Roles] ON [dbo].[Roles]

(

      [RoleName] ASC

)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

GO

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’114e91eb-1868-4cf7-8e9d-f43a19813b7f’, N’Browser’, N’May view folders, reports and subscribe to reports.’, N’0010101001000100′, 0)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’9bc89cad-3d9a-491d-be02-75be1579af2c’, N’Content Manager’, N’May manage content in the Report Server.  This includes folders, reports and resources.’, N’1111111111111111′, 0)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’0286b7fb-a18b-4fa4-bb59-adb7cf28df73′, N’Model Item Browser’, N’Allows users to view model items in a particular model.’, N’1′, 2)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’29c8f388-b3f6-4a4d-a7d9-eed72f3c0bd2′, N’My Reports’, N’May publish reports and linked reports; manage folders, reports and resources in a users My Reports folder.’, N’0111111111011000′, 0)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’5d9fa665-e315-4249-b519-0e3668f3d49d’, N’Publisher’, N’May publish reports and linked reports to the Report Server.’, N’0101010100001010′, 0)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’e51e9553-4f47-4619-a943-05020a373862′, N’Report Builder’, N’May view report definitions.’, N’0010101001000101′, 0)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’8ca532d7-7e5c-4f18-8976-d2d4ffd95472′, N’System Administrator’, N’View and modify system role assignments, system role definitions, system properties, and shared schedules.’, N’110101011′, 1)

INSERT [dbo].[Roles] ([RoleID], [RoleName], [Description], [TaskMask], [RoleFlags]) VALUES (N’a5f16ea9-fb16-4898-b8f1-9d05351f56de’, N’System User’, N’View system properties and shared schedules.’, N’001010001′, 1)

Podemos elegir al generar el script la versión de SQL Server (2000, 2005 o 2008) Como pequeño tirón de orejas , indicar  que el ejemplo anterior ha sido generado para “SQL Server 2008” y vemos que no se están utilizando los nuevos constructores de fila para generar los insert.

 

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like

Nuevas funciones para el lenguaje de expresiones de SSIS en SQL 2012

El lenguaje de expresiones de Integration Services podemos utilizarlo en columnas derivadas, expresiones en propiedades de componentes, tareas, administradores de conexión, variables, en la nueva Expression Task, etc…  Tiene su propia sintaxis, operadores, conjuntos de funciones, etc.. (se observan similitudes con las expresiones de C++). En la versión de SQL 2012 se han agregado tres nuevas funciones que se engloban en el conjunto de funciones para el tratamiento de cadenas: Left, Token y TokenCount.

Autenticación Integrada en Azure Database con SSIS

En muchos escenarios se nos presenta la necesidad de usar autenticación integrada para acceder a los orígenes de datos necesarios para alimentar nuestro sistema analítico. Con el uso cada vez más extendido de Azure, como al menos parte de nuestra infraestructura, algunos de estos orígenes van a estar alojados en bases de datos en Azure. En este caso vamos hablar de un error real que hemos tenido en la configuración y uso de la autenticación integrada contra bases de datos Azure con SSIS.

El RGPD y la anonimización mediante HASH

Antes de cargar nuestros datos en la nube debemos tener muy en cuenta el Reglamento General de Protección de Datos RGPD o sus siglas en inglés GDPR, se trata de una norma europea relativa a la protección de las personas físicas en lo que respecta al tratamiento de sus datos personales y la libre circulación de estos datos.