我们有这个当前数据库,我们需要用备份数据库中的另一个表替换一些表。我们正在使用 sql server 2008 r2,我想知道如何用具有相同结构的新表覆盖或替换当前表。提前致谢。
问问题
11933 次
3 回答
2
步骤1:
Restore the backup to the same server with a different name.
假设您的实际数据库是“MYDB”,您可以恢复备份并将“MYBD_BKUP”命名为类似的名称。
You can restore database using SQL server management studio
Right click on Databases>Restore Database
第2步:Once restore is success full, you can delete all the tables (to be deleted) from MYDB
第三步:
transfer table from MYDB_BKUP
USE MYDB
select * into <table1> from MYDB_BKUP.dbo.<table1>
etc.. for each table
于 2012-06-21T06:22:10.417 回答
1
IF (EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_SCHEMA = 'MySchema' AND TABLE_NAME = 'MyTable'))
BEGIN
DROP TABLE MyTable;
END
对于要替换的每个表,将此查询放在备份数据库脚本中。喜欢..
IF (EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_SCHEMA = 'YourSchemaName' AND TABLE_NAME = 'table_staff'))
BEGIN
DROP TABLE table_staff;
END
于 2012-06-21T06:12:41.890 回答
0
如果你想用备份数据库替换整个数据库,那么......
- 右键单击要替换的数据库
- 前往任务
- 去恢复...
- 从文件单选按钮检查
- 选择备份文件
- 现在您的 .bak 文件将显示在下部区域并通过单击复选框检查此文件
- 在弹出窗口中选择左侧的选项
- 检查复选框..覆盖现有
- 点击确定
这将用备份数据库替换您当前的数据库
于 2012-06-21T07:08:06.153 回答