我的CMS最近出现了一个问题,今天发现我上周创建的所有用户都被删除了。好消息是我有一个DB的备份,它使用标准的ASP.NET Membership表。
有没有办法在不恢复整个数据库的情况下恢复此数据?会员桌是一个迷宫......那里有现有的存储过程或实用程序吗?我不确定哪些表格是必需的,哪些表格不需要。
答案 0 :(得分:3)
我不知道有任何单一的程序或实用程序。
如果您只使用会员资格,则需要复制:
如果您还使用角色,则需要复制:
如果您还使用个人资料,则需要复制:
所以基本上它并没有那么糟糕。你只需要卷起袖子并写入2到4个插入语句。 (至少这是理论)
答案 1 :(得分:2)
Greg正确答案的后续行动......这是我使用的实际SQL脚本:
INSERT INTO aspnet_Users
SELECT * FROM Restored.dbo.aspnet_Users WHERE UserId NOT IN (SELECT UserId FROM aspnet_Users)
INSERT INTO aspnet_Membership
SELECT * FROM Restored.dbo.aspnet_Membership WHERE UserID NOT IN (SELECT UserID FROM aspnet_Membership)
INSERT INTO aspnet_Profile
SELECT * FROM Restored.dbo.aspnet_Profile WHERE UserID NOT IN (SELECT UserID FROM aspnet_Profile)
INSERT INTO aspnet_UsersInRoles
SELECT * FROM Restored.dbo.aspnet_UsersInRoles WHERE UserID NOT IN (SELECT UserID FROM aspnet_UsersInRoles)