Sql server 在远程计算机上创建SQL Server数据库mdf文件路径问题

Sql server 在远程计算机上创建SQL Server数据库mdf文件路径问题,sql-server,Sql Server,我正在尝试在远程计算机上运行的数据库实例上创建MS Sql Server数据库。执行此操作时,我需要能够指定数据库(.mdf)文件的路径。如果我试图在一个不存在的文件夹中创建一个数据库,SQL Server就会失败(如果它自动创建文件夹结构,那不是很好) 在尝试创建数据库之前,是否有任何方法可以在目标计算机上用SQL创建文件夹路径,或者至少可以确定新数据库的默认文件夹是什么,我可以在其中安全地创建新数据库文件?如果您具有适当的权限,并且启用了xp\u cmdshell,则可以: EXEC xp_

我正在尝试在远程计算机上运行的数据库实例上创建MS Sql Server数据库。执行此操作时,我需要能够指定数据库(.mdf)文件的路径。如果我试图在一个不存在的文件夹中创建一个数据库,SQL Server就会失败(如果它自动创建文件夹结构,那不是很好)


在尝试创建数据库之前,是否有任何方法可以在目标计算机上用SQL创建文件夹路径,或者至少可以确定新数据库的默认文件夹是什么,我可以在其中安全地创建新数据库文件?

如果您具有适当的权限,并且启用了xp\u cmdshell,则可以:

EXEC xp_cmdshell 'md "<path>"';
--...repeat for each node in the path
如果不是默认实例,请查看本文:


您这样做只是为了按照您想要的方式命名MDF/LDF文件,而不是使用dbname数据dbname log?若然,原因为何?您是否编写了依赖于文件物理名称的脚本?我真的很好奇这背后的动机。

这个问题有点过于简单化了。我控制文件路径的主要动机是,我需要将不同数据库的不同部分分发到不同的驱动器上(以使ldf和mdf保持在不同的轴上,等等),因此首先需要确定是否有更多的C:\在使用中。为此,您可能需要运行xp\u fixeddrives或类似的程序。通常,当这些东西需要定制时,你会提供一个用户界面,用户可以选择位置。与SQL Server的默认创建数据库UI不同,您可以强烈建议他们将文件放在不同的驱动器上。但是如果他们只有一个可用的驱动器号。。。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer