我有一個本地SQL 2000數據庫。嘗試所有未更改的存儲過程時,我的Winform應用突然死亡。以下是錯誤消息:服務器無法加載DCOM錯誤
服務器:消息7404,級別16,狀態2,過程RecordCurrentUser2,行45 服務器無法加載DCOM。
然後,我注意到,當我嘗試使用查詢分析器來更改SP時,當我試圖執行ALTER命令時,會出現相同的錯誤。我修剪下來的存儲過程,離開執行時導致該錯誤的核心代碼:
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
ALTER PROCEDURE dbo.RecordCurrentUser2
(
@xmlUser varchar(8000)
)
AS
BEGIN
DECLARE @Now datetime
DECLARE @ChangedRecordCount int
--Normally this is commented out, but for testing, we'll hard code a param value:
SET @xmlUser = '<User>
<User>
<EmailId>[email protected]</EmailId>
<LastName>Chad</LastName>
<FirstName>Smith</FirstName>
<Initials />
<DomainName>NA</DomainName>
<Account>SMITH</Account>
<TelephoneNumber>179-1458</TelephoneNumber>
<PeoplesoftId>031X45</PeoplesoftId>
<Department>Order to Collect BI Reporting</Department>
<StreetAddress>58 Hill Road</StreetAddress>
<PostalCode>06333</PostalCode>
<Location>MAIN</Location>
<State>AK</State>
<Country>United States</Country>
</User>
</User>'
DECLARE @DocHandle int
SET @Now = GETUTCDATE()
-- Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @DocHandle OUTPUT, @xmlUser
--Put the contents of the XML string into a temp table
SELECT
EmailId
,LastName
,FirstName
,Initials As Initials
,DomainName
,Account
,TelephoneNumber
,PeoplesoftId
,Department
,StreetAddress
,PostalCode
,Location
,State
,Country
,OtherTelephone
,NonUnisysDomainName
,NonUnisysAccount
INTO
#TempItems
FROM
OPENXML (@DocHandle, '/User/User', 2)
WITH
(
EmailId nvarchar(80)
,LastName nvarchar(50)
,FirstName nvarchar(50)
,Initials nvarchar(30)
,DomainName nvarchar(10)
,Account nvarchar(10)
,TelephoneNumber nvarchar(50)
,PeoplesoftId nvarchar(50)
,Department nvarchar(50)
,StreetAddress nvarchar(50)
,PostalCode nvarchar(50)
,Location nvarchar(80)
,State char(2)
,Country nvarchar(30)
,OtherTelephone nvarchar(50)
,NonUnisysDomainName nvarchar(10)
,NonUnisysAccount nvarchar(10)
)
END
以下服務在我的機器上運行,儘管他們可能不相關: 分佈式事務處理協調器(注意,運行本地數據庫) COM ++
我最近沒有故意安裝任何東西,但我記得看到一個MS補丁被公司政策自動應用,不知道它是什麼或如何找出。
如何解決此錯誤?
閱讀有關SQL錯誤7404之後,它看起來像SQL服務器有一些內部緩存文件操作的問題。對不起,如果我的評論太寬泛,並沒有幫助。 – 2009-12-01 03:40:27