7

Click here to load reader

FileTable SQL Server 2012

Embed Size (px)

DESCRIPTION

Crear, Modificar y Eliminar FileTable en SQL Server 2012

Citation preview

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    Buen da.

    En esta ocasin vamos a aprender a configurar una nueva funcionalidad de SQL Server 2012 llamada

    FILETABLE. Que es FILETABLE? Sencillo, en pocas palabras esta funcionalidad permite almacenar

    archivos y carpetas en tablas de SQL Server permitiendo que las aplicaciones existentes accedan a estos

    archivos de manera convencional como si lo estuviesen haciendo desde el explorador de Windows, por

    lo que las aplicaciones no deberan de sufrir cambio alguno. (Tomado del MSDN del site de Microsoft)

    Las aplicaciones terminan viendo una carpeta compartida nicamente, de ah que es bastante

    interesante su creacin y funcionamiento.

    FIleTable est creado sobre FILESTREAM, son funcionamientos distintos y ninguna se sustituye a si

    misma, sin embargo como requisito fundamental para la creacin de FILETABLE est que el FILESTREAM

    debe de estar activo.

    Ms informacin sobre la explicacin de FileTable puede ser encontrada en el siguiente link

    http://msdn.microsoft.com/en-us/library/ff929144.aspx

    Como configurar FILETABLE.

    1. Primero vamos a validar que la funcionalidad este activa desde los servicios de SQL Server.

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    2. En caso que no este configurado procedan a realizarlo, de igual manera desde el Management

    Studio de SQL Server lo pueden realizar, ingresando a las propiedades del servidor de base de

    datos, Advance FILESTREAM Access Level (Les recomiendo altamente ejecutar el paso 1 y 2)

    3. Se debe de reiniciar el servicio de SQL Server luego de activarlo desde el Management Studio.

    4. Seguidamente ejecutar el siguiente comando

    Pues aunque parezca extrao, puede ya estar configurado el FILESTREAM, pero su valor de ejecucin no

    va a ser el que necesitamos.

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    5. Ahora ejecutamos un comando sencillo para la creacin de la base de datos que utilizaremos

    como prueba de la nueva funcionalidad.

    CREATE DATABASE TestFileTable WITH FILESTREAM

    (

    NON_TRANSACTED_ACCESS = FULL, DIRECTORY_NAME = N'Documentos_GPI'

    );

    6. Vamos a ejecutar el siguiente comando para la creacin de un nuevo FILEGROUP de tipo

    FILESTREAM

    USE [master] GO

    ALTER DATABASE [TestFileTable] ADD FILEGROUP [FG_Filestream] CONTAINS FILESTREAM

    GO

    7. Agregamos ahora un DATAFILE, tal y como normalmente lo hacemos cuando utilizamos la

    funcionalidad del FILESTREAM

    ALTER DATABASE [TestFileTable] ADD FILE ( NAME = N'FileTable', FILENAME =

    N'C:\Documentos_SQL\FileTable' ) TO FILEGROUP [FG_Filestream]

    GO

    En este punto ya podemos ver como lo relacionado a FILESTREAM ha sido creado en la direccin

    correspondiente

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    8. Seguidamente creamos la FILETABLE mediante el siguiente script

    IF OBJECT_ID('dbo.DocumentosGPI', 'U') IS NOT NULL DROP TABLE dbo.DocumentosGPI

    GO

    CREATE TABLE dbo.DocumentosGPI AS FILETABLE

    WITH

    (

    FILETABLE_DIRECTORY = 'Documentos_GPI', FILETABLE_COLLATE_FILENAME = database_default

    )

    GO

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    9. Podemos ver como la tabla ha sido creada

    Podemos hacer un select a la tabla para corroborar que no tenga archivos.

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    10. Ahora para acceder el recurso compartido se accede desde el explorador de Windows o desde la

    venta Run

    11. Para copiar archivos basta con hacer un copy paste de archivos entre una carpeta y nuestra

    nueva carpeta creada para FILETABLE

    12. Realizamos nuevamente la consulta a la tabla y obtenemos los siguientes resultados.

  • Como configurar FileTables en SQL Server 2012

    www.gpilatam.com

    13. Si el archivo es eliminado de la ruta, de igual manera es eliminado de SQL Server, en estos casos

    SQL Server traduce las operaciones de copiado y borrado a comandos TSQL para mantener la

    tabla.

    Se realiza nuevamente la consulta luego del borrado del archivo.