在 VSTS Powershell 内联脚本任务中运行 drop SQL DB 时找不到类型 [Microsoft.SqlServer.Management.Smo.Server]

2024-03-29

在我的 VSTS 版本中,当我运行以下内联 Powershell(版本 5.1)脚本时

$srv = new-Object Microsoft.SqlServer.Management.Smo.Server(".") $db = New-Object Microsoft.SqlServer.Management.Smo.Database($srv, "MyDB") $db.Drop()

我收到以下错误

##[error]new-Object : Cannot find type [Microsoft.SqlServer.Management.Smo.Server]: verify that the assembly containing this type is loaded.

从上面的错误中,很明显它找不到“SMO 服务器”,并且我找到了一些如何在 Windows 环境中添加 SMO 服务器的解决方案,但真的不知道谁来处理我的 VSTS Powershell VSTS 任务中的这种情况?由于我是 Powershell 世界的新手,所以甚至不确定我正在运行的脚本是否是正确的方法,或者是否有其他方法可以完成这项工作?如果有人可以帮助我使用内联脚本选项而不是脚本文件,我将不胜感激。


首先,使用这段代码:new-Object Microsoft.SqlServer.Management.Smo.Server("."),它使用Windows身份验证,因此它使用代理服务帐户,确保代理服务帐户可以连接到数据库(默认情况下,如果代理作为服务运行,则为网络服务)

我建议您可以使用 SQL 身份验证和如下代码:

$assemblylist =   
"Microsoft.SqlServer.Management.Common",  
"Microsoft.SqlServer.Smo",  
"Microsoft.SqlServer.Dmf ",  
"Microsoft.SqlServer.Instapi ",  
"Microsoft.SqlServer.SqlWmiManagement ",  
"Microsoft.SqlServer.ConnectionInfo ",  
"Microsoft.SqlServer.SmoExtended ",  
"Microsoft.SqlServer.SqlTDiagM ",  
"Microsoft.SqlServer.SString ",  
"Microsoft.SqlServer.Management.RegisteredServers ",  
"Microsoft.SqlServer.Management.Sdk.Sfc ",  
"Microsoft.SqlServer.SqlEnum ",  
"Microsoft.SqlServer.RegSvrEnum ",  
"Microsoft.SqlServer.WmiEnum ",  
"Microsoft.SqlServer.ServiceBrokerEnum ",  
"Microsoft.SqlServer.ConnectionInfoExtended ",  
"Microsoft.SqlServer.Management.Collector ",  
"Microsoft.SqlServer.Management.CollectorEnum",  
"Microsoft.SqlServer.Management.Dac",  
"Microsoft.SqlServer.Management.DacEnum",  
"Microsoft.SqlServer.Management.Utility",
    "Microsoft.SqlServer.Management.Smo"
foreach ($asm in $assemblylist)  
{  
    $asm = [Reflection.Assembly]::LoadWithPartialName($asm)  
}  
    $conn = new-object Microsoft.SqlServer.Management.Common.ServerConnection("{sql server instance name}","{sql user name}","{password}")

$srv = new-object Microsoft.SqlServer.Management.Smo.Server($conn)

Write-Host $srv.Information.Version

    $db = New-Object Microsoft.SqlServer.Management.Smo.Database($srv, "{database name}") 
    $srv.KillAllProcesses($db)
    $srv.databases[$db.Name].drop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 VSTS Powershell 内联脚本任务中运行 drop SQL DB 时找不到类型 [Microsoft.SqlServer.Management.Smo.Server] 的相关文章

  • 以管理员身份从 cmd 批处理运行 PowerShell 脚本

    我有一个 PowerShell 设置 我想在执行策略可能受到限制并且需要管理员权限的计算机上执行 理想情况下 我可以将其包装在 cmd 批处理中 如下所示 powershell Command Start Process powershel
  • 是否可以在我的 Azure DevOps 构建管道“发布工件”任务中有条件地设置工件名称?

    我想知道是否可以在 Azure DevOps 构建管道 发布工件 任务中有条件地设置构建工件的名称 我想根据构建管道的输入生成不同的工件 比如说 根据输入管道变量 我想生成三个工件之一 红色 蓝色 绿色 是否可以根据输入变量指定在我的 发布
  • PowerShell 中一个命令中的多个前景色

    我想用一个语句输出许多不同的前景色 PS C gt Write Host Red ForegroundColor Red Red 该输出为红色 PS C gt Write Host Blue ForegroundColor Blue Blu
  • 使用自签名证书签署 PowerShell 脚本(并且不使用 makecert.exe)

    我正在尝试签署一份 ps1使用自签名证书 用例是我自己在私人开发站上编写的脚本 因此无需使用 或付费 真正的 CA 但是 无论我阅读多少关于证书生成和数字签名主题的指南 我似乎都无法使其正常工作 这是我到目前为止所取得的成就 Create
  • 无法读取文件内容

    我正在尝试读取文件的内容 releaseNotesPath System DefaultWorkingDirectory ccp develop ccp ccp ReleaseNotes ReleaseNotes latestRelease
  • 获取 SecureString 作为纯文本参数

    我正在尝试将 SecureString 作为纯文本参数获取到命令行 PowerShell 我知道安全字符串的形式是什么 例如 字符串 abc 将是安全字符串 71289371289 然后 我想将 71289371289 作为参数传递给脚本
  • powershell有method_missing()吗?

    我一直在研究 powershell 的动态功能 我想知道一些事情 powershell 中是否有类似于 Ruby 的 method missing 的东西 您可以在其中设置 捕获所有方法 来动态处理对对象上不存在的方法的调用 不 不是真的
  • 使用 GitHub 包注册表作为 PowerShell 包存储库

    据我所知PowerShell 存储库是 NuGet 存储库 https devblogs microsoft com powershell setting up an internal powershellget repository Gi
  • 如何创建自定义 Powershell 运算符?

    是否可以在 Powershell 中创建自定义运算符 而且 我该怎么做呢 我搜索过谷歌 但没有任何结果 我特指一个中缀运算符 示例列表 包含 元素 我已经创建了 cmdlet 使用 Powershell 和 C 模块等 所以我只需要大概的内
  • VSO:具有分层区域结构的单一项目?

    历史上我们一直有各自的VSO正在开发的每个逻辑项目的项目 这一点尤其重要 因为我们需要为每个项目都有单独的积压工作 每个项目都有自己的产品负责人 我们有一个由大约 10 名开发人员组成的团队 他们在这些项目之间工作超过 2 周的冲刺 在使用
  • Jenkins 中的 Powershell 转义路径字符

    我有一个声明性管道 应该执行 powershell 步骤来安装路径 路径作为参数提供 parameters string name UNC defaultValue server01 lab local shared data descri
  • 无法在 PowerShell 中完全解析 XML

    我有一个 XML 文件 我想解析该文件并检索特定信息 为了便于理解 下面是 XML 文件的屏幕截图 我想解析 XML 并为每个Item节点 检索屏幕截图中指示的字段 检索到的每个值都需要针对每个项目节点进行格式化 最后 我希望能够指定一个要
  • Connect-AzAccount 无提示

    我正在尝试使用以下方式登录 Azure 门户 Connect AzAccount 此代码要求我输入我不想要的提示 我们可以使用一些简单的配置脚本自动登录吗 正如Joy所说 您可以通过凭据使用用户帐户登录 但不会出现任何提示 请确保您的帐户未
  • Azure DevOps Pipelines“正在等待代理的控制台输出...”

    我需要从正在运行的发布任务的输出中获取某些内容才能完成 身份验证代码 但控制台现在没有更新 我得到的只是 等待代理的控制台输出 这种情况发生在我们的自托管代理 Linux 或 Windows 和托管 Ubuntu 1604 代理上 有问题的
  • 如何清除整个终端(PowerShell)

    我有一个问题 在powershell中使用clear或cls命令仅清除终端的可见部分 我想知道如何清除整个终端 顺便说一句 我使用 VSCode tl dr 问题是关于清零的both屏幕和回滚缓冲区 in the 综合终端 of 视觉工作室
  • 通过 powershell 获取压缩的 TFS 2015 (vNext) 构建输出日志(就像构建后的下载链接一样)

    我想知道是否有人有一个 PowerShell 脚本 可以通过 TFS 2015 vNext 的 Rest API 下载此构建 ID 的所有当前构建日志 直到当前步骤 为每个记录的构建步骤创建单独的文本文件 并压缩所有文本文件 或者 如果已经
  • 在结果中只显示一列?

    这是一个简单的问题 但如何在下面的代码中选择特定的列 我只想显示 时间 列 而不显示其他任何内容 我尝试输入 FORMAT TABLE TIME 但它只是多次填充 TIME 而没有实际显示时间 server event Get Conten
  • “目标计算机上的 PowerShell”任务失败,并在 TFS 2017\Azure Dev Ops 中出现错误

    我尝试使用 TFS 构建定义中的 目标计算机上的 PowerShell 任务来运行其中一台 Azure 服务器上存在的 PowerShell 脚本 但该任务失败并出现以下错误 System Management Automation Run
  • Powershell 错误:方法调用...不包含名为“replace”的方法

    我想使用 PowerShell 搜索并替换 xml 文件中的字符串 我试过这个 gc d test xml replace 1234 xxxx sc d test xml 这对于我的 test xml 文件效果很好 我的 test xml
  • Try Catch 在 Powershell 脚本中不起作用

    我似乎无法让这个 try catch 工作 我确信这很简单 但此刻我的大脑太煎熬了 请帮忙 param String RemoteServicesVMs VmThatThrowsError function getWinServiceSta

随机推荐

  • Python 脚本给出“:没有这样的文件或目录”

    我有几个 python 脚本 它们工作得很好 但如果我尝试从 bash 运行它 一个脚本 截至今天早上 开始给我这个错误 没有这样的文件或目录 我可以通过执行以下操作来运行 损坏 的脚本python script name py环顾四周后
  • .gitattributes 涂抹和清理过滤器作为存储库的一部分

    我的 git 存储库中有许多模板文件 它们以不同的速率变化 然后使用它们生成 HTML 页面 如果有人报告问题 我希望他们能够告诉我模板文件的哪个版本有问题 目前 我在更改日期时手动将日期输入到文件中 或者 好吧 我尝试这样做 大多数时候我
  • 如何在 Lua 中下载文件,但在运行时写入本地文件

    我正在尝试制作一个更新程序 以便当我的 Lua 应用程序过时时它将使用LuaSocket下载较新的 exe 文件 可以运行我的 Lua 代码 在这个更新程序中 我希望它显示到目前为止已下载的数量 但是 通过以下 HTTP 请求 它会阻止应用
  • 如何以编程方式检查 iOS 上的方向是否已锁定 - Swift

    有没有办法在旋转发生之前以编程方式检查 iPod 方向锁定是否已启用 例如 如果用户要单击按钮 我们是否可以检查方向锁定是否打开 以提醒他们在单击操作发生之前必须关闭方向锁定 目前还没有办法检测方向是否被锁定 您可以只添加应用程序中应支持的
  • 如何将新的键值对添加到现有对象中

    我有一个简单的功能 function pagination opt limit console log opt logs out this gt Object limit 2 layout getConversations if typeo
  • web.xml 中的 cvc-id.3 错误

    在 Eclipse 中为 SpringMVC Web 应用程序编辑 web xml 文件时 我收到此错误消息 cvc id 3 身份字段 约束 web app servlet 名称 唯一性 匹配元素 web app 但是这个 元素没有简单类
  • 确定 Windows 当前是否正在播放声音

    所以我对这个问题思考了一段时间 但我不知道解决这个问题的正确方法是什么 我想使用以下命令确定 Windows 是否在某个时间输出声音Powershell脚本 我可以确定音频驱动程序是否有错误 但我无法确定系统是否正在播放声音 我看了看 NE
  • ruby Date.today 和 DateTime.now 的日期错误

    我已经使用 RVM 安装了 ruby 1 8 6 p383 系统 ruby 是 1 9 1 p378 1 使用 ruby 1 8 时 我从 Date today 和 DateTime now 得到错误的日期 而 Time now 是正确的
  • 从 SVN 获取最后一个文件提交日期

    Subversion 菜鸟 所以请耐心等待 有没有办法从命令行获取文件的最后提交日期 svn info filename
  • Laravel 真的这么慢吗?

    我刚刚开始使用 Laravel 我几乎还没有编写任何代码 但我的页面加载需要将近一秒钟 当我的无框架应用程序和 NodeJS 应用程序花费约 2 毫秒时 这让我有点震惊 拉拉维尔在做什么 这不是正常行为 是吗 是否需要一些微调 Larave
  • 无法使用php在mysql中保存大文本

    query INSERT INTO ARTICLES TITLE BY IN POST VALUES title by in POST post 该代码能够保存小长度文本 但不能保存大文本 的数据类型为POST字段是长文本 另外 如果我通过
  • 使用 C# (telerik) 在 wpf 中自定义弹出窗口的设计

    我在按钮单击事件中显示一个弹出窗口 gt 我在该弹出窗口中保留了一个自定义用户控件 因此每当显示弹出窗口时 都会显示自定义用户控件 但现在我需要修改自定义控件 弹出窗口中当前的自定义控件如下所示 但我需要角落看起来像下面的图片 如何做到这一
  • Angular 4.3 HttpClient:拦截响应

    在有关新的文档中HttpClientModuleAngular 4 3的新版本中 拦截请求的机制解释得非常好 还提到了响应拦截器机制 但我找不到任何相关内容 有谁知道如何拦截响应以便在将正文消息发送到服务之前修改正文消息 Thanks 我最
  • 按关系属性排序 neo4j

    使用 Neo4j 1 9 3 我想创建一个音乐节目列表 在给定的节目中可能会表演三段 每件作品都有一个与之关联的作曲家 并且可能出现在许多不同的程序中 因此我无法在作品节点上放置序列号 我假设我可以创建该程序 其与每个部分的关系如下所示 p
  • Rails 4 加密 Cookie 重放攻击

    我最近升级到 Rails 4 并改用加密 cookie 作为会话存储 不幸的是 这似乎意味着重放攻击是可能的 即如果用户注销 任何 cookie 都不会失效 并且可以用于在没有用户 密码的情况下进行身份验证 据我所知 这是加密 cookie
  • Spring真的不支持接口注入吗?

    我知道 Spring 不支持接口注入 而且我已经读过很多次了 但今天 当我看到 Martin Fowler 写的一篇关于国际奥委会的文章时 link http martinfowler com articles injection html
  • Oracle PIVOT,两次?

    我一直在尝试在 Oracle 11g 中不再使用 DECODE 来透视行 其中有一个方便的 PIVOT 函数 但我可能发现了一个限制 我试图为基表中的每个值返回 2 列 就像是 SELECT somethingId splitId1 spl
  • 将“var”传递给另一个方法

    我可能完全错过了这里的重点 但是 如何将 var 传递给另一个方法 我正在使用 linq 将 XML 加载到可枚举对象列表中 我有不同的对象类型 具有不同的字段 但无论使用哪个对象 我的过程的最后一步都是相同的 XNamespace xml
  • 单例中 getter 和 setter 的线程安全

    我在 Swift 3 中创建了一个简单的单例 class MySingleton private var myName String private init static let shared MySingleton func setNa
  • 在 VSTS Powershell 内联脚本任务中运行 drop SQL DB 时找不到类型 [Microsoft.SqlServer.Management.Smo.Server]

    在我的 VSTS 版本中 当我运行以下内联 Powershell 版本 5 1 脚本时 srv new Object Microsoft SqlServer Management Smo Server db New Object Micro