如何使用sqlserver2012filetables

1.激活FileTable1.修改数据库引擎的属性打开“SQLServer配置管理器”,修改SQLServer数据库引擎的属性。
使用此页面为此MicrosoftSQLServer2012安装启用FILESTREAM。
(1)启用FILESTREAM进行Transact-SQL访问选择此选项可启用FILESTREAM进行Transact-SQL访问。
必须先选择该控件,然后才能使用其他控件。
如果未指定此选项,则无法添加FileStream文件组。
(2)启用FILESTREAM以进行文件I/O流访问选择此选项可启用FILESTREAMWin32流访问。
(3)Windows共享名称使用此控制选项可以输入将用于给定WINDOWS集合的Windows共享的名称。
例如,未能命名SQLServer。
(4)允许远程客户端访问FILESTREAM数据通过选择此选项,允许远程客户端从该服务器访问此FILESTREAM数据。
2.更改服务器属性。
默认配置如下:上述选项解释如下:(1)“FILESTREAMAccessLevel”显示当前SQLServer实例上支持的FILESTREAM级别。
要更改访问级别,请选择以下值之一:二进制大对象(BLOB)数据不能存储在文件系统上。
这是默认值。
也就是说,filestreamaccesslevel=0授予Transact-SQL访问权限FILESTREAM数据可以使用Transact-SQL访问,但不能通过文件系统访问。
IE。
filestreamaccesslevel=1启用完全访问的FILESTREAM数据可以根据文件系统使用Transact-SQL进行访问。
IE。
filestreamaccesslevel=0注意:第一次准备文件流时,需要重新启动计算机来配置驱动程序。
(2)“FILESTREAM共享名称”显示安装过程中选择的只读FILESTREAM共享的名称。
在本实验中,我们将“FILESTREAM访问级别”设置为:设置完全访问权限。
如果通过T-SQL编写,请运行以下脚本:EXECsys.sp_configureN'filestreamaccesslevel',N'2'RECONFIGUREWIVERRIDE注意:完成设置后,重新启动实例。
3.配置防火墙要在受防火墙保护的环境中使用FILESTREAM,客户端和服务器都必须解析为FILESTREAM文件中包含的服务器的DNS名称。
FILESTREAM需要打开Windows文件共享端口139和445。
2、配置文件组1、添加文件组完成以上操作后,就可以为数据库添加专用的FileStream组文件了。
如果您正在通过脚本进行操作,则需要运行以下脚本:ALTERDATABASE[db01]ADDFILEGROUP[FileStreamFileGroup]CONTAINSFILESTRAM2.完成上述操作后要添加文件,可以添加FilStream类型数据库文件。
在本例中,系统不会为文件类型“FileStream”创建mdf或ndf文件,而是自动在文件夹名称C:\SqlData下创建逻辑名称为C:\SqlData的文件夹,即C:\。
SqlData\FileData。
头文件.hdr文件包含头文件。
删除此数据库后,mdf、ndf、log和此文件夹都会被删除。
如果通过脚本工作,请运行以下脚本:ALTERDATABASE[db01]ADDFILE(NAME=N'FileData',FILENAME=N'C:\SqlData\FileData')TOFILEGROUP[FileStreamFileGroup]注意:在上面的示例中,在运行脚本之前以前,C:\SqlData必须存在,建议在选择路径中使用optionkey。
如果没有路径,则报错:同时文件夹不能重复,即C:\SqlData\FileData不能存在。
否则会报错:3.非事务性FileTable访问的启动允许Windows应用程序在不中断SQLServer的情况下获取FILESTREAM文件数据。
要允许对SQLServer中存储的文件进行这种非事务性访问,必须在包含该文件的每个数据库中创建一个文件。
指定数据库级别所需的非事务性访问级别。
选项解释如下:(1)FILESTREAM非事务性访问指定以下选项之一,用于从文件系统对文件表中存储的FILESTREAM数据进行非事务性访问:OFF、READ_ONLY或FULL。
如果服务器未启用FILESTREAM,则该值将设置为关闭并禁用。
充分完成这次测试。
(2)FILETREAM目录名指定与所选数据库关联的FILE数据的索引名。
在文件层次文件夹中,此数据库级别目录成为在实例级别为FILESTREAM指定的共享名的子目录以及在数据库中创建的文件的父目录。
如果在提供非事务性访问时未提供目录名称,则必须稍后提供该名称,以便可以在数据库中创建该目录。
如果通过脚本执行该命令,则如下所示:ALTERDATABASEdb01SETFILESTREAM(NON_TRANSACTED_ACCESSU=FULL,DIRECTORY_NAME=N'ImageFiles')注意:若要更改数据库的存在,请使用DIRECTORY_NAMEFILESTREAM选项调用ALTERDATABASE(Transact-SQL)语句。
当使用这些选项更改目录名称时,仅应关闭数据库,而不会打开任何文件循环。
说明:检查是否可以跟踪数据库数据库中的非事务性访问,写法如下:SELECTDB_NAME(database_id),non_transacted_access,non_transacted_access_descFROMsys.database_filestream_options3.创建FileTable1.创建第一个文件表“SQLServerManagementStudio”只提供一份文件。
创建文件表,依然写成:USUSdb01CREATETABLEImageTable1ASFILETABLE官方模板:USUS[db01]CREATETABLE[dbo].[ImageTable1]ASFILETABLEON[PRIMARY]FILESTREAM_ON[FileStreamFileGroup]GET共享路径。
文件创建完成后,会在共享文件目录下生成该文件。
\SQL1SqlFileImageFilesImageTable1:4、通过Windows资源管理器查看,可以看到已经创建了一个以GUID命名的文件夹。
通过SQLServerManagementStudio查看表结构。
四.操作1.通过“Windows资源管理器”将文件添加到文件夹中,将文件A01.GIF添加到文件夹\\SQL1\SqlFileImagesImagesImages1中。
然后运行脚本:select*fromImageTable1结果如下:可以看到SQLServer已经自动将文件添加到表中了。
2.运行以下脚本重命名文件:updateImageTable1setname='Cup.GIF'wherename='A01.GIF'通过“Windows资源管理器”,查看文件夹\\SQL1\SqlFileImages\ImageTable1。
文件A01.GIF称为Cup.GIF。
3、我们可以查看公用文件夹,继续复制其他文件,然后通过“Windows资源管理器”查看该文件夹。
4.您可以使用删除表脚本来删除它,例如:DeleteImageTable1wherename='Cup.GIF'或者,您可以直接通过Windows资源管理器删除该文件。
五、备份与恢复1、备份数据库使用SQLServer备份数据库时,FILESTREAM文件会与数据库中的数据结构一起备份。
2.部分备份如果您不想将FILE数据连同相关数据一起恢复,可以使用部分备份来删除FILE组。
6.相关说明详情请参见http://msdn.microsoft.com/zh-cn/library/gg492086.aspx1.SemperOn当包含数据的FILESTREAM或FileTable数据库属于SemperOn发帖组时:FILETREAM和FileTable允许函数或将返回虚拟网络名称(VNN),而不是计算机名称。
有关这些函数的详细信息,请参阅Filestream和FileTable函数(Transact-SQL)。
通过文件系统API对FILESTREAM或FILE数据的所有访问都必须使用VNN,而不是计算机名称。
2、分区表不支持FileTable分区。
在多个FILESTREAM组的帮助下,在大多数场景下可以解决纯粹的扩展问题,而无需使用分区(与SQL2008FILESTREAM不同)。
3.FileTable复制不支持复制及相关功能(包括事务复制、合并复制、变更数据捕获和变更跟踪)。
4.您可以像任何其他表一样为文件表创建视图。
但是,为FileTable创建的视图有以下注意事项:视图不会具有语义,即视图中的列(包括“文件属性”列)的行为与常规列类似,并且没有特殊语义。
同样适用于文件/目录的行。
视图可以根据“可更新视图”语义进行更新,但基础表可以拒绝更新,因为在表中您可以显示文件的路径。
将其添加为视图中的扩展列示例:CREATEVIEWMP3FILESASSELECTcolumn1,column2,...,GetFileNamespacePath(),column3,FROMDocumenta

下载sqlserver2012express需要下载哪些文件

下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=29062根据您电脑的操作系统,如果是64位,则需要下载:CHS\x64\SQLEXPR_x64_CHS.exe145.7MBCHS\x64\SQLEXPRADV_x64_CHS.exe1.4GBCHS\x64\SQLEXPRWT_x64_CHS.exe723.7MBCHS\x64\SqlLocalDB.MSI33.1MBCHS\x64\SQLManagementStudio_x64_CHS.exe645.6MB如果是32位,则加载下载以下文件:CHS\x86\SQLEXPR_x86_CHS.exe126.5MBCHS\x86\SQLEXPR32_x86_CHS.exe111.4MBCHS\x86\SQLEXPRADV_x86_CHS.exe1.4GBCHS\x86\SQLEXPRWT_x86_CHS.exe757.9MBCHS\x86\SqlLocaLDB.MSI27.9MBCHS\x86\SQLManagementStudio_x86_CHS.exe660.8MB

sql2008和sql2012的区别

sql2008和sql2012的区别是:版本不同、数据压缩不同、加密不同。

1不同版本

1:SQL2008包括企业版(Enterprise)、标准版(Standard)和专业版(Developer)。

2:sql2012包括企业版(Enterprise)、标准版(Standard)、专业版(Developer)和商业智能版(BusinessIntelligence)。

2数据压缩不同。

2sql2012:sql2012具有数据压缩、基于策略的管理和集成全文功能。

3加密不同

1:SQL2008需要应用程序更改来加密整个数据库、数据文件和文件寄存器。

2SQL2012:SQL2012可以在不改变应用程序的情况下加密整个数据库、数据文件和日志文件。