sql-server - 使用表中的示例数据克隆数据库
问题描述
我想要一个脚本,它可以快速删除数据库的测试实例并重新创建它,每个表中只有一个行样本。我知道不存在参照完整性问题或其他对象限制,例如链接到记录的存储过程。我尝试了以下方法,但它说明数据库正在使用中。我想我在 drop 和 clone 之间遗漏了一些东西。我在这里做错了什么?还是必须在两个脚本之间拆分?
-- ensure "master" is selected in SSMS
IF EXISTS(select * from sys.databases where name='shoesales_TEST')
ALTER DATABASE shoesales_TEST set single_user with rollback immediate
GO
IF EXISTS(select * from sys.databases where name='shoesales_TEST')
DROP DATABASE shoesales_TEST
GO
DBCC CLONEDATABASE
(
shoesales
, shoesales_TEST
)
GO
ALTER DATABASE shoesales_TEST SET READ_WRITE
GO
USE shoesales_TEST
GO
INSERT INTO shoesales_TEST.dbo.sizesales
SELECT TOP 30 * FROM shoesales.dbo.sizesales
GO
解决方案
推荐阅读
- python - CUDA_ERROR_NOT_INITIALIZED 由 model.predict() 使用 tensorflow2.3
- laravel - 无法在 Visual Studio Code 中为 Laravel 项目创建目录
- reactjs - 在material-ui v3中使用材质表组件时遇到麻烦,那么有什么方法可以在material-ui ui v3中使用材质故事吗?
- python - 战舰委员会
- react-native - 无效的钩子调用钩子只能在函数组件的主体内部调用
- amazon-web-services - 无法通过 Putty 连接到 EC2 实例
- marklogic - 清除集合在 Java API 中不起作用
- c++ - 问题使用 cmake 构建 C++ 包:使用 Python .dylib,使用 2.7 而不是 3.8,OS X
- javascript - Google Cloud Functions、Google Compute Engine 和排队请求
- python - syntax error on python 3.x with variables