2

当我尝试在新服务器中创建以下存储过程时,出现错误

消息 6528,级别 16,状态 1,过程 usp_BulkCopy,第 3 行程序
集“SqlBulkCopy”未在数据库“主”的 SQL 目录中找到。

代码:

USE [master]
GO

/****** Object:  StoredProcedure [dbo].[usp_BulkCopy]    Script Date: 08/22/2012 23:32:59 ******/
CREATE PROCEDURE [dbo].[usp_BulkCopy]
    @sourceServer [nvarchar](255),
    @sourceDatabase [nvarchar](255),
    @sourceSelectQuery [nvarchar](4000),
    @destinationServer [nvarchar](255),
    @destinationDatabase [nvarchar](255),
    @destinationTable [nvarchar](255),
    @FlagKeepIdentity [bit],
    @throwExceptionOnErrors [bit],
    @SourceTrusted [bit],
    @DestTrusted [bit],
    @SourceUser [nvarchar](255),
    @SourcePass [nvarchar](255),
    @DestUser [nvarchar](255),
    @DestPass [nvarchar](255)
WITH EXECUTE AS CALLER
AS
EXTERNAL NAME [SqlBulkCopy].[StoredProcedures].[usp_BulkCopy]
GO

我该如何克服呢?我不确定程序集是什么以及它是否确实是一个真正的问题。

谢谢你的时间..

4

1 回答 1

0

谢谢 Marc S。这是集会。

希望它可以帮助别人。这是我所做的详细信息。

我从另一个数据库服务器中找到了该程序集,并在此服务器上运行它,如下所示:

CREATE ASSEMBLY [SqlBulkCopy]
AUTHORIZATION [dbo]
FROM 
[CODE in Hexadecimals-this would be unique I think]

然后我不得不这样做:

ALTER DATABASE [master] SET TRUSTWORTHY ON

然后这个:

sp_configure 'clr enabled',1
GO
RECONFIGURE
GO
sp_configure 'clr enabled'  -- make sure it took
GO

就这些。它工作正常:

要确保安装了程序集,您可以运行以下命令:

SELECT * FROM sys.assemblies
于 2013-09-23T15:16:32.287 回答