如何使 raiserror 和 nowait 与 sqlcmd 一起使用?

2024-04-23

这是命令行:

sqlcmd -S localhost -U myuser -P mypwd -b -r0 -Q "raiserror('hello',10,1) with nowait;waitfor delay '00:00:10';raiserror('world!',10,1) with nowait"

应该输出hello立即然后 10 秒后world!。不幸的是,它在 10 秒后输出了两个字符串。

sqlcmd 可以做对吗?如何?

P.S.

我不想为此使用 LinqPad 或任何 GUI。


我意识到这是一篇旧帖子,很可能没有人会看到我的答案,但我会提供我们在我的组织中所做的一些事情。我将是第一个承认这有点拼凑的人,但它对我们来说运作良好。

我们有通过 SQLCMD 调用的进程,它们使用 Raiserror 来指示进度条目。显然,当我们很久以前升级到 Sql 2012 时,这不再起作用。

我最终在 C 驱动器上创建了一个名为 c:\Sql2008_SQLCMD 的新目录,并将以下两个文件从 Sql Server binn 文件夹的 Sql 2008 安装复制到该文件夹​​。

  • SQLCMD命令
  • SQLCMD.rll

然后我修改了我的进程(在bat文件中)以使用这样的dos变量

SET SQLCMD="C:\Sql2008_SQLCMD\sqlcmd"

然后我将 bat 文件中的任何正常 SQLCMD 命令行替换为

%SQLCMD% -S 废话...

而不是正常的

SQLCMD -S 等等

这种技术允许我调用 SQLCMD 的 SQL 2008 版本,并对我的 bat 文件脚本进行最少的更改。

这使我能够继续查看 Raiserror 的输出,这样我就可以看到进程的进度。

我目前仍在 Sql 2016 CU3 下使用这种技术 - 我不确定当我们最终进入 Sql 2017 或更高版本时是否会遇到任何问题

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使 raiserror 和 nowait 与 sqlcmd 一起使用? 的相关文章

随机推荐

  • 提供 REST Web 服务的 JEE6 企业应用程序应该如何组织?

    从一个月前开始 我正在努力学习宁静的网络服务 现在我已经练习了语法并且理解了概念 我决定制作一个非常简单的企业应用程序 其中包括 EJB JPA 和 REST 我正在付出巨大的努力来尝试了解组织这种系统的最佳方式是什么 如果在该领域有经验的
  • Haskell 重叠/不连贯的实例

    我知道这段代码有点傻 但有人可以解释为什么吗isList 42 回报True然而isList2 42 prints False 以及如何防止这种情况发生 我想更好地理解一些更晦涩的 GHC 类型扩展 我认为这将是一个有趣的例子 LANGUA
  • 如何通过单击使 java Module JAR 执行

    我在 Windows 7 上使用 OpenJDK 11 和 OpenJFX 11 我的 IDE 是 Netbeans 9 我复制了以下教程 由 NetbeansVideos 发布 JDK 11 OpenJFX Apache Ant 和 Ap
  • Angular 7 - 浏览器刷新始终重定向到主页

    浏览器刷新后将用户保留在同一页面上的最佳方法是什么 Example 用户位于www domain com page1 http www domain com page1 当他刷新浏览器时 路由器重定向到www domain com home
  • PHP“记住我”安全漏洞?

    我正在编写一个配备 记住我 的登录表单 到目前为止 我读过的教程 部分是为了确保我做得正确 都说将加密的密码存储在 cookie 中与用户名 然后 每次 PHP 检查当前用户是否未登录时 检查他们的 cookie 并查找这些值 如果用户名与
  • 使用 pandas.read_json 时出现 ValueError

    我制作了一个 250MB 的 json 文件 应如下所示 A uniquevalue0 B 1 2 3 A uniquevalue1 B 1 A uniquevalue2 B 1 2 3 4 其中 B 值可以是变量 len gt 1 Thi
  • 在没有实际的 SQL Server 数据库启动和运行的情况下,我将如何配置工作量测试工具来模拟实体框架的 DbContext?

    我们团队的应用程序开发涉及使用工作量测试工具来模拟我们的实体框架的 DbContext 然而 工作量测试工具似乎需要查看应用程序使用的实际 SQL Server 数据库 以便模拟我们的实体框架的 DbContext 这似乎违反了正确的单元测
  • 如何在结构上使用 offsetof() ?

    我想要 offsetof 参数行mystruct1 我试过了 offsetof struct mystruct1 rec structPtr1 u line line and also offsetof struct mystruct1 l
  • 使用 asp.net core 删除所需的验证

    我有一个客户需要表单上有两个按钮 保存未完成表格进度的表格 因此 此表单仍然需要验证字段 但会忽略所需的验证 另一个按钮将需要运行包含必填字段的完整验证 我正在使用库存标准 asp net core 项目 我相信该项目使用 jquery v
  • IE 不会在使用 window.open 创建的窗口中加载 PDF

    问题就在这里 仅发生在 Internet Explorer IE 中 我有一个页面 其中包含指向几种不同类型文件的链接 这些文件中的链接执行一个 Javascript 函数 该函数打开一个新窗口并加载特定文件 这非常有效 除非我需要在新窗口
  • onProviderEnabled 不起作用?

    为了在 GPS 和网络位置提供商之间切换 我只是尝试了这样的方式 以确定何时禁用一个提供商 切换到另一个提供商 但是我的onProviderEnabled 没有被调用 public void onProviderDisabled Strin
  • 正则表达式时区

    我需要一个有效时区的正则表达式 尝试了以下一个 但我不确定 请帮我找出以下正则表达式中的错误 Edited 这里冒号和分钟是可选的 我怎样才能将其更改为强制 如果没有分钟 用户应输入 00 05 00 请帮我解决这个问题 var chkzo
  • 如何将 Git 补丁应用到具有不同名称和路径的文件?

    我有两个存储库 其中 我对文件进行了更改 hello test 我提交更改并从该提交创建补丁git format patch 1 HEAD 现在 我有第二个存储库 其中包含一个与 hello test 内容相同的文件 但以不同的名称放置在不
  • 具有颜色渐变的 3D 散点图,其中颜色取决于计数

    我有一个包含点的数据框 其中包括点的 x y 和 z 坐标以及 计数 每个数据点的数字在 1 到 187 之间 我想将 计数 与颜色渐变相关联 例如1是绿色 187是红色 然后用x y和z坐标绘制数据点的散点图 其中每个数据点的颜色都被编码
  • ECMAScript 规范是否允许 Array 成为“超类”?

    我正在寻找任何迹象表明 超类化 内置类型是否有效根据规格 也就是说 给定任何假设的 ECMAScript 一致实现 超类化 内置函数是否会通过影响类构造函数的创建算法来破坏运行时 超一流 我创造的一个术语 指的是一个类 其通过构造它或将其作
  • Cookie 未设置或首次不起作用

    在每个页面上 我都设置了一个 cookie 来为与该会话对应的标题按钮着色 问题是 当我第一次在不同的部分打开页面时 cookie 仍然是旧的 彩色按钮也是如此 然后 如果我再次单击同一按钮 则 cookie 会被正确设置 为什么 这是我的
  • 为什么苹果设备在自己的播放器中播放html5视频?

    我尝试了不同的 html 播放器并使用 html5 视频标签 然而 苹果设备 ipod touch 4 iphone 4 ipad 在其中显示 html5 视频自己的球员 我的主要目标是在视频上显示叠加广告 我决定借助绝对定位和 z ind
  • iOS4:如何使用视频文件作为 OpenGL 纹理?

    我正在尝试将视频文件的内容 暂时不包含音频 显示到 OpenGL 中的 UV 映射 3D 对象上 我已经在 OpenGL 中做了相当多的工作 但不知道从哪里开始处理视频文件 而且大多数示例似乎都是从相机获取视频帧 这不是我想要的 目前我觉得
  • 列表切片的迭代

    我想要一个算法来迭代列表切片 切片大小在函数外部设置并且可以不同 在我看来 它是这样的 for list of x items in fatherList foo list of x items 有没有办法正确定义list of x ite
  • 如何使 raiserror 和 nowait 与 sqlcmd 一起使用?

    这是命令行 sqlcmd S localhost U myuser P mypwd b r0 Q raiserror hello 10 1 with nowait waitfor delay 00 00 10 raiserror world