在mstest unittest中,我连接到MSSQL服务器,然后执行以下步骤:
CREATE DATABASE testDB ON PRIMARY (NAME = testDB, FILENAME = 'c:\...\original.mdf', SIZE = 5MB) LOG ON (NAME = testDB_log, FILENAME = 'C:\...\original.ldf', SIZE = 1MB)
然后使用sqlcmd
应用一些脚本sqlcmd -S "MyPC" -i "C:\...\createTable.sql" -f 65001 -d testDB -b
然后分离数据库
USE master IF EXISTS (SELECT name FROM sysdatabases WHERE name ='testDB') ALTER DATABASE [testDB] SET OFFLINE WITH ROLLBACK IMMEDIATE
USE master IF EXISTS (SELECT name FROM sysdatabases WHERE name ='testDB') exec sp_detach_db 'testDB'
最后从C#的unittest中我想读取在第一步中创建的MDF文件,但我无权这样做(UnauthorizedAccessException)。
我使用以下连接字符串:
Server=MyPC;Database=master;Trusted_Connection=True;
如何创建数据库,但在分离数据库后无法读取生成的MDF文件。我用