3

在将 VS 2010 DB 项目转换为 SSDT(SQL Server Data Tools)项目
(以及与数据库和 SSDT 项目之间的一些比较)后,我收到以下文件夹结构:

  • 项目
    • 数据生成计划
    • 德博
      • 意见
    • 架构比较
    • 模式对象
      • 数据库级对象
        • ...
      • 模式
        • 德博
          • 可编程性
          • 服务经纪人
          • 同义词
          • 意见
    • 脚本
      • 部署后
      • 预部署
    • 安全

如果似乎有些表格和视图在下面Project\Schema Objects\Schemas\dbo,有些在下面Project\dbo

实际问题:

  1. 为什么有两个不同的文件夹?
    (我怀疑导入与此有关。)

  2. 我可以将文件合并到一个文件夹下吗?如果可以,是哪个?

  3. 如果没有,我向哪个文件夹添加新文件?

  4. 如果我在导入过程中选择了创建备份,那么备份信息保存在哪里?- 我希望能够删除它。


编辑:

另一个不一致 - 下的文件Project\dbo\Tables包含键和约束,而下的文件Project\Schema Objects\Schemas\dbo\Tables被拆分(单独的表,单独的约束等)

4

2 回答 2

3

当我从 DB Pro 2005 升级到 DB Pro 2008 时,我也遇到了同样的事情。我还没有转换为 SSDT 格式,但在前一种情况下,我只是将文件合并回旧文件夹中。

但是,在某些情况下,如果项目足够简单或数据库项目相对较新,我只是重新制作项目。(如果我重新创建/重新导入,那么我将丢失源代码管理中文件的历史记录。)。

于 2012-06-13T18:06:09.207 回答
2

似乎导入的文件(来自 VS 2010 dbproj)在下面,Project\Schema Objects\Schemas\dbo\Tables而之后添加的所有内容都在Project\dbo\Tables.

新定义不会拆分为不同的文件和文件夹(表、索引、键......),这使得文件系统路径不那么深,并且更容易读取有关特定表的所有信息(特别是如果键/索引/约束被删除然后与旧版本的表文件进行比较)。

将表格Project\dbo\Tables移动到主文件中并将附属文件的内容移动到主文件中似乎可行(您必须在文件中的命令之间添加“GO”)。

另一种选择是从 sqlproj 创建一个数据库(通过将数据库与项目进行比较),删除旧文件,然后通过将项目与数据库进行比较以新格式重新创建它们。

于 2012-06-13T16:50:12.910 回答