use*_*972 6 sql-server-2005 sql-server
由于这件事的进展在第一次显然有些难以理解:
我使用带有分离/重新连接方法的复制数据库向导尝试了一个完全无聊的、已经完成了数千次的数据库复制。
复制失败。日志表明它无法对CREATE VIEW特定视图执行操作,因为该视图的数据源不存在。这本身就很有趣,因为源肯定存在,并且有问题的视图在源数据库中完全可用。我还不太清楚这有多重要,因为我还没有弄清楚为什么会产生错误。
这导致从源数据库中删除所有非系统用户关联,留下用户 dbo、information_schema、sys 和 guest。非系统角色也被删除。架构不受影响。
我已经从备份中恢复了损坏的数据库。然而,在学术上,我想知道以下几点:
这是完全可重复的。为了试验这个特定问题,我制作了一些副本(手动),在每种情况下,失败的复制作业都会从源数据库中删除用户和角色。
删除产生错误的视图允许复制完成,并且正如人们所期望的那样,除了保持源数据库不变之外,还生成具有相同数据、用户等的副本。
如果这很重要,我已经尝试重建系统数据库的索引以及损坏的数据库,但没有明显效果。
产生的错误:
1:00:25 PM,5/28/2013 1:00:25 PM,0,0x,ERROR : errorCode=-1073548784 description=Executing the query "CREATE VIEW [Sourcing].[PermittedArrProducts]
AS
SELECT dbo.tblArrProducts.ArrProductID, dbo.tblArrProducts.ArrangementID, dbo.tblArrProducts.ContainerTypeID, dbo.tblArrProducts.Quantity
FROM Sourcing.PermittedArrangements INNER JOIN
dbo.tblArrProducts ON Sourcing.PermittedArrangements.ArrangementID = dbo.tblArrProducts.ArrangementID
" failed with the following error: "Invalid object name 'Sourcing.PermittedArrangements'.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
282 次 |
| 最近记录: |