Webcast: Sacándole provecho a MS SQL Server 2012 FileTable para la gestión de datos en entornos heterogéneos en 24 Horas PASS Latam (Presentación + Demos)


En el presente post, les hago entrega de la presentación así como las demos (código) que expuse en este webcast durante este grandioso evento.

PRESENTACIÓN DEL WEBCAST

 

Logo

VIDEO DE LA PRESENTACIÓN

Para poder visualizar el video de esta presentación, pueden verlo en linea a través del siguiente enlace de mi SkyDrive:

 A continuación les emito los scripts utilizado durante la presente charla:

Script T-SQL

/*
Código T-SQL  “Habilitar el servicio de FileStream”
Opciones a aplicar
0 = Deshabilita la compatibilidad de FILESTREAM para esta instancia.
1 = Habilita FILESTREAM para el acceso a Transact-SQL.
2 = Habilita FILESTREAM para el acceso de transmisión por secuencias a Transact-SQL y Win32.
*/

EXEC
    sp_configure
        filestream_access_level,
        2
RECONFIGURE
GO

——————————————————————————————

Código T-SQL  “Crear base de datos ha aplicar dicha opción”

CREATE DATABASE DBT_24HorasPASSLatam_DemoFileTable
    ON PRIMARY
        (Name = DBT_24HorasPASSLatam_DemoFileTable,
    FILENAME = ‘C:\Users\Cheo\Documents\MS SQL PASS Group Venezuela\SQL PASS Venezuela 2012\Webcast – 24 Horas PASS Latam\DBT_24HorasPASSLatam_DemoFileTable.mdf’),
    FILEGROUP FGR_PRIMARIO
        CONTAINS FILESTREAM
            (
            NAME = DBT_24HorasPASSLatam_DemoFileTable_FileTableFS,
            FILENAME=’C:\Users\Cheo\Documents\MS SQL PASS Group Venezuela\SQL PASS Venezuela 2012\Webcast – 24 Horas PASS Latam\FS’
            )
            LOG ON
            (
            Name = DBT_24HorasPASSLatam_DemoFileTableLog,
            FILENAME = ‘C:\Users\Cheo\Documents\MS SQL PASS Group Venezuela\SQL PASS Venezuela 2012\Webcast – 24 Horas PASS Latam\DBT_24HorasPASSLatam_DemoFileTableLog.ldf’
            )
            WITH FILESTREAM
                (
                NON_TRANSACTED_ACCESS = FULL,
                DIRECTORY_NAME = N’DBT_24HorasPASSLatam_DemoFileTable’
                );
GO

——————————————————————————————

Código T-SQL  “Validando las opciones de FileStream”

SELECT
    DB_NAME(database_id),
    non_transacted_access,
    non_transacted_access_desc
FROM
    sys.database_filestream_options;
GO

——————————————————————————————

Código T-SQL  “Crear una tabla FileTable”
 
USE DBT_24HorasPASSLatam_DemoFileTable
GO

CREATE TABLE
    TBL_FileTableDEMO AS FileTable
WITH
    (
    FileTable_Directory = ‘TBL_FileTableDEMO_Dir’
    );
GO

——————————————————————————————

Código T-SQL  “Seleccionar datos desde FileTable” – Tabla vacia

USE DBT_24HorasPASSLatam_DemoFileTable;
GO

SELECT
    *
FROM
    DBT_24HorasPASSLatam_DemoFileTable.dbo.TBL_FileTableDEMO
GO

——————————————————————————————

Código T-SQL  “Seleccionar datos desde FileTable” – Tabla poblada

USE DBT_24HorasPASSLatam_DemoFileTable;
GO

SELECT
    [name] AS [Nombre de archivo],
    [file_type] AS [Tipo de archivo],
    CAST ( [file_stream] AS VARCHAR ) AS [Archivos almacenados],
    [cached_file_size] AS [Tamaño de archivo],
    [creation_time] AS [Fecha de creación],
    [last_write_time] AS [Fecha ultima escritura],
    [last_access_time] AS [Fecha ultimo acceso]
FROM
    DBT_24HorasPASSLatam_DemoFileTable.dbo.TBL_FileTableDEMO
GO

——————————————————————————————

Copiar datos, Comando T-SQL ‘INSERT’

USE DBT_24HorasPASSLatam_DemoFileTable;
GO

INSERT INTO
    DBT_24HorasPASSLatam_DemoFileTable.dbo.TBL_FileTableDEMO
    (
    [name],
    [file_stream]
    )
    SELECT
        ‘Ejemplo.pptx’,
        * FROM OPENROWSET
            (
                BULK N’C:\Users\Cheo\Documents\MS SQL PASS Group Venezuela\SQL PASS Venezuela 2012\Webcast – 24 Horas PASS Latam\Ejemplo.pptx’ ,
                SINGLE_BLOB
            )
                AS [Archivo de datos FT]
GO

——————————————————————————————

  Código T-SQL  “Identificar directorio y/o archivos”

USE DBT_24HorasPASSLatam_DemoFileTable;
GO

SELECT
    [name] AS [Nombre de archivo],
    [file_type] AS [Tipo de archivo],
    CAST ( [file_stream] AS VARCHAR ) AS [Archivos almacenados],
    [cached_file_size] AS [Tamaño de archivo],
    [is_directory] AS [Es directorio]
FROM
    DBT_24HorasPASSLatam_DemoFileTable.dbo.TBL_FileTableDEMO
GO

——————————————————————————————

Código T-SQL – “Identificar rutas de archivos”
                     
SELECT
    FileTableRootPath ( ‘DBT_24HorasPASSLatam_DemoFileTable’ ) AS [Ruta de archivo]
GO
——————————————————————————————

Código T-SQL – “Identificar identificador para los archivos”
                     
SELECT
    GetPathLocator ( ‘\\Lapsql01\lapsql01\DBT_24HorasPASSLatam_DemoFileTable\TBL_FileTableDEMO_Dir’ ) AS [ID de ubicación de archivo]
GO

——————————————————————————————

Código T-SQL – “Establecer ruta relativa de los archivos / directorio”
                     
SELECT
    file_stream.GetFileNamespacePath () AS [Ruta]
FROM
    DBT_24HorasPASSLatam_DemoFileTable.dbo.TBL_FileTableDEMO
GO

Espero que la presente exposición les sea útil en el manejo de datos heterogeneos en sus escenarios empresariales.

pass_summit_2013

Nos pillamos en una próxima entrega, Winking smile.