1.SQL Server根据分区表名查找所在的文件及文件组实现脚本

--SQL Server根据分区表名查找所在的文件及文件组实现脚本
SELECT
fg.name AS FileGroupName ,
fg.name ,
t.name ,
f.name AS FILENAME
FROM sys.tables AS t
INNER JOIN sys.indexes AS i ON ( t.object_id = i.object_id )
INNER JOIN sys.filegroups AS fg ON i.data_space_id = fg.data_space_id
INNER JOIN sys.database_files f ON f.data_space_id = fg.data_space_id
WHERE t.name = 'test1'
-- 同上 test1为表名称

SELECT a.* FROM sys.filegroups a
LEFT JOIN sys.database_files b ON a.data_space_id = b.data_space_id
LEFT JOIN sys.indexes c ON c.data_space_id = b.data_space_id
WHERE c.object_id = OBJECT_ID('test1')

2. 如何更改一个表所在的表分区   How I can move table to another filegroup

第一种方式,就是开始用的那种重新创建表,然后重新建立相关索引

参考:https://social.msdn.microsoft.com/Forums/sqlserver/en-US/025825ee-ecbc-4d7c-94ff-0595afc48347/how-to-move-a-table-from-a-file-groupprimary-to-another?forum=transactsql

第二种方式,就是只创建索引或聚集索引

CREATE UNIQUE  CLUSTERED INDEX PK_ta -- PK_ta   原表的索引名称
ON tableName(id) -- 表名称 id 为主键,所以用了UNIQUE, 如果是有其它非聚集索引则不需要这个关键字
WITH DROP_EXISTING
ON db_fg2-- 文件组名称 -- 查看表索引
  EXEC sp_helpindex 'table'

You do not need to drop the current clustered index, instead use the option "with (DROP_EXISTING = ON)" in 2005 or "with DROP_EXISTING" in 2000. Notice that the approach will be different if the clustered index is related to a primary key or unique constraint.

eg:

If you want to just move the table to a new filegroup, you need to recreate the clustered index on the table (after all: the clustered index is the table data) on the new filegroup you want.

You can do this with e.g.:

CREATE CLUSTERED INDEX CIX_YourTable
ON dbo.YourTable(YourClusteringKeyFields)
WITH DROP_EXISTING
ON [filegroup_name]

or if your clustered index is unique:

CREATE UNIQUE CLUSTERED INDEX CIX_YourTable
ON dbo.YourTable(YourClusteringKeyFields)
WITH DROP_EXISTING
ON [filegroup_name]

3.如何处理MSSQL 同步时的外键约束问题

--获得禁用所有外键约束的语句

select 'alter table '+quotename(object_Name(parent_obj))+' oncheck constraint '+quotename(Name)+';'+char(13)
from sysobjects where Xtype='F'
--获得启用所有外键约束的语句 select 'alter table '+quotename(object_Name(parent_obj))+' check constraint '+quotename(Name)+';'+char(13)
from sysobjects where Xtype='F'

4.

--未完待续

SQL 文件以及文件组的更多相关文章

  1. SQL Server中的高可用性(2)----文件与文件组

        在谈到SQL Server的高可用性之前,我们首先要谈一谈单实例的高可用性.在单实例的高可用性中,不可忽略的就是文件和文件组的高可用性.SQL Server允许在某些文件损坏或离线的情况下,允 ...

  2. SQL Server架构 -- 数据库文件和文件组

    在SQL SERVER中,数据库在硬盘上的存储方式和普通文件在Windows中的存储方式没有什么不同,也是在特定文件夹下创建不同的文件,然后经过文件存储系统去抓取数据信息.理解文件和文件组的概念可以帮 ...

  3. SQL Server里的文件和文件组

    在今天的文章里,我想谈下SQL Server里非常重要的话题:SQL Server如何处理文件的文件组.当你用CREATE DATABASE命令创建一个简单的数据库时,SQL Server为你创建2个 ...

  4. SQL2005:SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法

    SQL2005 还原数据库失败,提示如下: SQL Server 2005还原数据库时出现“不能选择文件或文件组XXX_log用于此操作的解决办法 出现错误时操作步骤为:右击数据库--->任务- ...

  5. SQL Server 文件和文件组

    文件和文件组简介 在SQL Server中,数据库在硬盘上的存储方式和普通文件在Windows中的存储方式没有什么不同,仅仅是几个文件而已.SQL Server通过管理逻辑上的文件组的方式来管理文件. ...

  6. SQL Server中数据库文件的存放方式,文件和文件组

    原文地址:http://www.cnblogs.com/CareySon/archive/2011/12/26/2301597.html   SQL Server中数据库文件的存放方式,文件和文件组 ...

  7. 关于SQL Server中分区表的文件与文件组的删除(转)

    在SQL Server中对表进行分区管理时,必定涉及到文件与文件组,关于文件与文件组如何创建在网上资料很多,我博客里也有两篇相关转载文件,可以看看,我这就不再细述,这里主要讲几个一般网上很少讲到的东西 ...

  8. SQL Server 2008文件与文件组的关系

    此文章主要向大家讲述的是SQL Server 2008文件与文件组,其中包括文件和文件组的含义与关系,文件.文件组在实践应用中经常出现的问题,查询文件组和文件语句与MSDN官方解释等相关内容的介绍. ...

  9. SQL Server 文件流文件组

    背景: 文件流通过在文件系统上存储blob数据文件将数据库引擎与ntfs文件集成在一起,使用t-sql和win32访问数据. 文件流使用windows系统来缓存数据,有助于在减少文件流数据对sql s ...

  10. Design5:SQL Server 文件和文件组

    数据库是数据的仓库,用于存储数据,而存储数据需要媒介,现在的存储媒介,最常用的是硬盘,土豪一点的服务器使用固态硬盘(SSD),特殊用途的服务器使用内存.数据库最常用的存储文件是数据文件和日志文件,数据 ...

随机推荐

  1. MVC MVC常见错误及解决办法

    MVC常见错误及解决办法 问题1: 必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5 ...

  2. javascript实现俄罗斯方块游戏

    观摩一下<编程之美>:“程序虽然很难写,却很美妙.要想把程序写好,需要写好一定的基础知识,包括编程语言.数据结构与算法.程序写得好,需要缜密的逻辑思维能力和良好的梳理基础,而且熟悉编程环境 ...

  3. 对WEB前端的几段思考(一)——界面设计和性能优化(整理中)

    尽管我并非艺术出生,既没有任何设计基础,又没有较高艺术涵养,也深谙在短时间内创造一定艺术造诣并非易事,但是既然当初选择从事网站前端开发,我的目光不能仅停留在前端代码上.作为一名志向在前端领域发展的人员 ...

  4. img标签中onerror用法

    <img src="/statics/bazi/images/150x100.jpg" alt="#" onerror="this.style. ...

  5. 选项卡tab2

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. log4j日志+面向切面监控异常

    log4j.xml src/main/resources ----------------------------------------------------------------------- ...

  7. 模拟实现strstr和strrstr

    strstr函数用于判断str2是否是str1的子串,如果是,则返回str2在str1中首次出现位置的地址,如果不是则返回NULL.其模拟实现代码如下:#include<iostream> ...

  8. INSERT IGNORE 与INSERT INTO的区别,以及replace的用法

    INSERT IGNORE 与INSERT INTO的区别就是INSERT IGNORE会忽略数据库中已经存在 的数据,如果数据库没有数据,就插入新的数据,如果有数据的话就跳过这条数据. 这样就可以保 ...

  9. 你不可不知的数据库northwind

    说起northwind,40左右的大年一定不会陌生,它是著名的northwind示例库,在SQL Server 是标配. 它有8张表,涉及客户.商品.订单. 如果你是有志从事企业级应用开发,或有志从事 ...

  10. (STM32F4) Timer Compare mode 操作

    Timer 比較模式(compare) 具體會用在哪種狀況目前還沒有這種經驗,但Compare有配置功能pin想必有應用會用到這個模式 從Function Block來看比較模式比基本Timer多了比 ...