【问题标题】:I have the same sql server version, try to restore db, got error: Specified cast is not valid. (SqlManagerUI)我有相同的 sql server 版本,尝试恢复 db,得到错误:Specified cast is not valid。 (SqlManagerUI)
【发布时间】:2014-03-07 09:21:34
【问题描述】:

我有一个客户向我发送他的数据库。我已将其解压缩并尝试将其还原到我的 sql 数据库。他正在使用 SQL Server 2008 R2 和我。我尝试以下步骤:

  1. 打开 SQL Server Management Studio
  2. 登录
  3. 右键单击数据库文件夹
  4. 点击“恢复数据库...”
  5. 我给数据库一个新名称,因为我还没有它
  6. 我选择了单选按钮“来自设备”
  7. 我浏览并选择.bak 文件
  8. 我点击确定按钮开始恢复

现在我在下面收到此错误。我不明白这是什么问题!

指定的演员表无效。 (SqlManagerUI)

节目地点:

在 Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.PopulateGridWithBackupSetsFromDevices()
在 Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.GetBackupSetsFromDevices()
在 Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.textDeviceSelected_TextChanged(对象发件人,EventArgs e)
在 System.Windows.Forms.Control.OnTextChanged(EventArgs e)
在 System.Windows.Forms.TextBoxBase.OnTextChanged(EventArgs e)
在 System.Windows.Forms.Control.set_Text(字符串值)
在 System.Windows.Forms.TextBoxBase.set_Text(字符串值)
在 System.Windows.Forms.TextBox.set_Text(字符串值)
在 Microsoft.SqlServer.Management.SqlManagerUI.SqlRestoreDatabaseGeneral.buttonSelectDevice_Click(对象发送者,EventArgs e)
在 System.Windows.Forms.Control.OnClick(EventArgs e)
在 System.Windows.Forms.Button.OnClick(EventArgs e)
在 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs 事件)
在 System.Windows.Forms.Control.WmMouseUp(消息和 m,MouseButtons 按钮,Int32 点击)
在 System.Windows.Forms.Control.WndProc(Message&m)
在 System.Windows.Forms.ButtonBase.WndProc(Message&m)
在 System.Windows.Forms.Button.WndProc(Message&m)
在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&m)
在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

【问题讨论】:

    标签: sql-server-2008-r2 restore database-restore


    【解决方案1】:

    真的很奇怪的问题,我也遇到过;并以这种方式解决:

    1. 分离的数据库
    2. 从适当的位置复制此数据库的 .MDF/.LDF(数据和日志)文件。
    3. 重命名副本并将其粘贴(如果在同一台机器上,则在同一位置,否则在 数据位置)
    4. 将其作为新数据库附加。

    【讨论】:

      【解决方案2】:

      这种情况一般是.BAK文件损坏,检查.BAK文件是否损坏,也可以尝试使用命令恢复

      RESTORE DATABASE test FROM DISK = 'E:\test.bak'
      

      【讨论】:

        猜你喜欢
        • 2013-03-12
        • 1970-01-01
        • 1970-01-01
        • 2020-05-26
        • 2012-09-15
        • 1970-01-01
        • 2022-09-27
        • 2020-06-05
        • 1970-01-01
        相关资源
        最近更新 更多