C# 如何使用本地SQL Server实例在外部硬盘上创建数据库

C# 如何使用本地SQL Server实例在外部硬盘上创建数据库,c#,sql-server,database,ssms,C#,Sql Server,Database,Ssms,我有一个数据库,它是从我的C#代码生成的,该代码有一个到我C驱动器上本地SQL Server实例的连接字符串 数据库大小为150GBs,无法安装在我的硬盘上。 如何使用本地SQL server实例直接在外部硬盘上创建db?我最终采用了另一种方法来回答问题。与其在外部hdd本身上初始化它(因为这不是一个选项),不如使用本地存储上的本地实例生成几乎没有数据的数据库文件 为要移动的数据库编写脚本 USE master; ALTER DATABASE db MODIFY FILE (name='db

我有一个数据库,它是从我的C#代码生成的,该代码有一个到我C驱动器上本地SQL Server实例的连接字符串

数据库大小为150GBs,无法安装在我的硬盘上。
如何使用本地SQL server实例直接在外部硬盘上创建db?

我最终采用了另一种方法来回答问题。与其在外部hdd本身上初始化它(因为这不是一个选项),不如使用本地存储上的本地实例生成几乎没有数据的数据库文件

为要移动的数据库编写脚本

USE master; 

ALTER DATABASE db
MODIFY FILE (name='db_name'
             ,filename='E:\dbfile.mdf'); 
如果数据库附带了日志文件,也可以对其进行修改

ALTER DATABASE db
MODIFY FILE (name='db_name_log'
            ,filename='E:dbfile_log.ldf'); 
将数据库设置为脱机状态

ALTER DATABASE db SET OFFLINE WITH ROLLBACK IMMEDIATE;
将.mdf和.ldf文件复制到外部驱动器,然后

ALTER DATABASE db SET ONLINE;

希望这对别人有帮助

安装数据库是什么意思?这既不清楚,也极为广泛。要回答这个问题,您需要更加清晰。您可以在
创建数据库
命令中指定.ldf和.mdf文件的位置。但是,将数据库放在外部设备上似乎是个坏主意。如果设备丢失,无论出于何种原因,您可能会出现意外行为。我看到了,但在我的场景中,您真的没有选择的余地:\