You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PowerShell创建与SSMS操作等价的SQL Server空白数据库

用PowerShell创建与SSMS默认配置一致的SQL Server数据库

当你在SSMS中右键「Databases」选择「New Database...」,命名为test并点击「OK」时,本质是让SQL Server使用实例的所有默认配置创建数据库——包括默认的数据/日志文件存储路径、初始大小、自动增长规则、继承服务器排序规则、完整恢复模式等。用PowerShell可以通过两种方式实现完全一致的效果,无需依赖外部.sql文件:

方法1:使用官方SqlServer模块(推荐)

微软官方的SqlServer模块提供了New-SqlDatabase cmdlet,默认行为完全匹配SSMS右键新建数据库的逻辑:

  1. 先安装模块(如果未安装):
Install-Module -Name SqlServer -Scope CurrentUser -Force
  1. 执行创建命令(替换你的SQL实例名为实际实例,比如localhost或.\SQLEXPRESS):
New-SqlDatabase -ServerInstance "你的SQL实例名" -Name "test"

这个命令会自动读取目标SQL实例的默认配置,生成和SSMS操作完全一致的空白数据库。

方法2:直接执行T-SQL语句(无模块依赖)

如果不想安装SqlServer模块,可以通过PowerShell调用.NET类执行原生T-SQL——CREATE DATABASE test;就是SSMS后台执行的核心语句,会自动继承服务器默认配置:

$serverInstance = "你的SQL实例名"
$dbName = "test"

# 构建Windows身份验证的连接字符串(如果用SQL身份验证,需添加User ID和Password)
$connString = "Server=$serverInstance;Integrated Security=True;"

$conn = New-Object System.Data.SqlClient.SqlConnection($connString)
$cmd = New-Object System.Data.SqlClient.SqlCommand("CREATE DATABASE $dbName;", $conn)

try {
    $conn.Open()
    $cmd.ExecuteNonQuery()
    Write-Host "数据库test已成功创建,配置与SSMS默认新建一致"
}
catch {
    Write-Error "创建失败:$_"
}
finally {
    $conn.Close()
    $conn.Dispose()
}

验证一致性

创建完成后,你可以在SSMS中查看test数据库的属性:数据/日志文件的路径、初始大小、自动增长设置,以及排序规则、恢复模式等,都会和直接在SSMS中新建的完全相同。

内容的提问来源于stack exchange,提问作者helpaccount321

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 06:00:04