Sql server 异常调用";。ctor";加上;2“;论点:“;数据库';XXX'&引用;

Sql server 异常调用";。ctor";加上;2“;论点:“;数据库';XXX'&引用;,sql-server,database,powershell,sqlps,Sql Server,Database,Powershell,Sqlps,在Windows Server 2012R2和Powershell v4上运行SQLPS命令创建DB时出现问题 #Import SQL Server Module called SQLPS Import-Module SQLPS -DisableNameChecking #Your SQL Server Instance Name $Inst = "sql03" $Srvr = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Se

在Windows Server 2012R2和Powershell v4上运行SQLPS命令创建DB时出现问题

#Import SQL Server Module called SQLPS
Import-Module SQLPS -DisableNameChecking

#Your SQL Server Instance Name
$Inst = "sql03"
$Srvr = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Server -ArgumentList $Inst

#database PSDB with default settings
#by assuming that this database does not yet exist in current instance
$DBName = "PSDB"
$db = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Database($Srvr, $DBName)
$db.Create()

#Confirm, list databases in your current instance
$Srvr.Databases |
Select Name, Status, Owner, CreateDate
我收到以下错误:

New-Object : Exception calling ".ctor" with "2" argument(s): "SetParent failed for Database 'PSDB'. "
At C:\test.ps1:11 char:7
+ $db = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Database($Srvr, $D ...
+       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [New-Object], MethodInvocationException
    + FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

You cannot call a method on a null-valued expression.
At C:\test.ps1:12 char:1
+ $db.Create()
+ ~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

The following exception occurred while trying to enumerate the collection: "Failed to connect to server sql03.".
At C:\test.ps1:15 char:1
+ $Srvr.Databases |
+ ~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], ExtendedTypeSystemException
    + FullyQualifiedErrorId : ExceptionInGetEnumerator

如何解决此问题的任何建议?

如果您在本地工作,请尝试替换:

$Srvr = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Server -ArgumentList $Inst
与:


如果您在本地工作,请尝试更换:

$Srvr = New-Object -TypeName Microsoft.SqlServer.Management.Smo.Server -ArgumentList $Inst
与:


您有正确的实例名称吗?即,您是否正在尝试访问SQL03上的默认实例?我认为“连接到服务器sql03失败”就是问题所在。我正在运行sql03本身的命令。您可以在同一台Windows服务器上运行多个SQL server实例。如果您试图通过SSMS连接到SQL Server,那么“服务器名称”字段中有什么内容?只有一个实例“MSSQLSERVER”,您找到解决方案了吗?我遇到了相同的错误您有正确的实例名吗?即,您是否正在尝试访问SQL03上的默认实例?我认为“连接到服务器sql03失败”就是问题所在。我正在运行sql03本身的命令。您可以在同一台Windows服务器上运行多个SQL server实例。如果您试图通过SSMS连接到SQL Server,那么“服务器名称”字段中有什么内容?只有一个实例“MSSQLSERVER”,您找到解决方案了吗?我也遇到了同样的错误