相关疑难解决方法(0)

如何将数据库从 SQL Server 2012 移动到 SQL Server 2005

如果我需要将数据库从 SQL Server 2012(32 位)移动到 SQL Server 2005(64 位),我有哪些选择?

我知道我不能:

  • 在 SQL Server 2005 上还原数据库的备份
  • 分离和附加

我知道我可以:

  • 使用导入数据向导,我在一个数据库上尝试过,但它只移动数据,即使那样也很麻烦,因为我需要做很多工作来创建临时表来维护标识列,重新创建所有 FK、索引等。

有没有更简单的选择?

sql-server migration downgrade

34
推荐指数
2
解决办法
2万
查看次数

插入表 select * from table vs 批量插入

我只是想知道 SQL 语句INSERT INTO TABLE1 SELECT * FROM TABLE2,会像批量插入一样工作吗?

如果没有,有没有办法在插入记录时排除索引。进程在一次执行中插入 1.5 亿条数据。

我们计划创建阶段表(不会有任何索引Table1),然后将其从阶段表转移到目标表(会有索引Table2

我们不是在从过程中创建平面文件的情况。

但是当我们将数据从Table1(未编入索引)传输到Table2(编入索引)时,我们正在寻找可以加快处理速度的方法。

任何方式使用BulkInsertTable1Table2

sql-server insert select bulk-insert

9
推荐指数
1
解决办法
6万
查看次数

使用 SSIS 和目标表上的触发器进行表数据传输

我是数据库操作的新手。SQL Server 2008 R2 是我使用的数据库。

我需要将选定的行从临时数据库表移动到生产数据库表。我正在使用 SSIS 包来做到这一点。我在目标表上几乎没有触发器。当我将数据从源表传输到目标表时,我现在很困惑这些触发器是否会被触发。

如果在将数据从源表传输到目标表时不会触发这些触发器,在此数据传输过程中是否可以执行任何操作来触发这些触发器?

给我一些关于上述的信息将不胜感激。

更新:选定的行将被添加到目标表中。触发器将根据新插入的数据更新目标服务器中某个其他表中的数据。例如:

    CREATE TRIGGER [MyTableChange] 
       ON  [dbo].[DestinationTable]
       AFTER INSERT,UPDATE
    AS 
    BEGIN

    declare @newid as int
    select @newid=newid  FROM INSERTED

     Declare @total as int
     declare @lookatme as int
    select @total=total, @lookatme from DestinationTable where newid=@newid
    update anothertable set total=total+@total where lookwhere=@lookatme
    END

GO
Run Code Online (Sandbox Code Playgroud)

上面的触发器是一种示例,与我在原始触发器中的逻辑不完全相同。但它提供了我正在尝试做什么的信息。我将访问新插入的行详细信息以更新另一个表值。请不要将其视为语法和编写方式方面的正确触发器。我只是试图给出原始触发器的本质。

trigger sql-server ssis

3
推荐指数
1
解决办法
5485
查看次数

标签 统计

sql-server ×3

bulk-insert ×1

downgrade ×1

insert ×1

migration ×1

select ×1

ssis ×1

trigger ×1