我们正在将Jenkins转移到安装了SQL server 2019的新服务器上。Jenkins之前在一台使用SQLServer2008R2的服务器上运行(构建过程完美无瑕(
我们使用Redgate的SQL Automation从我们的SVN存储库中执行数据库的干净构建
作为这一举措的一部分,我们需要安装最新版本的tSQLt,而这正是我们遇到问题的地方。
我遵循了Solomon Rutzky在这篇文章中给出的建议:-无法在SQL Server 2017 中创建tSQLtCLR程序集
然而,每次我尝试构建时,我都会将此消息视为第一个警告:
Invoke-DatabaseBuild,SQL Change Automation 4.0.19274.11021,版权所有©Red Gate Software Ltd 2014-2019
正在清理服务器"TTS-10\TTS2019"上的数据库"Blankdb"。
正在验证SQL源代码管理项目"D:\Jenkins\workspace\Manzen Database Trunk"。
警告:在程序集"tSQLtCLR"中,执行以下SQL:时出现错误"找不到类型"tSQLtRR.tSQLtPrivate"的方法"SigningKey">
警告:创建函数[tSQLt].信息
警告:返回表
警告:作为
警告:返回
警告:SELECT Version='1.0.5873.27393',
警告:ClrVersion=(SELECT tSQLt.Private::Info(((,
警告:ClrSigningKey=(SELECT tSQLt.Private::SigningKey(((,
警告:V.SqlVersion,
警告:V.SqlBuild,
警告:V.SqlEdition
。。。为简洁起见,省略了其他代码
我现在很头疼,因为我不知道该做什么。
我在网上的一些帖子中看到了对dll的引用,但在安装tSQLt后,在新服务器上没有看到任何引用。
如果有人能为我指明正确的方向,我将不胜感激。
此错误可能有两个原因:
- 您正在自己构建tSQLt,而不是使用已发布的tSQLt内部版本(-->使用已发布内部版本(
- 您的tSQLt安装文件已损坏。(-->下载一个新的(
如果有正当理由自己构建tSQLt,则需要将密钥替换为自己的密钥,因为原始签名密钥不会发布。