当前位置: 首页 > 知识库问答 >
问题:

Liquibase:获取错误,因为“预期编码为‘UTF-8’,但检测到‘UTF-16LE’的BOM”

和弘博
2023-03-14

这是我第一次用MSSQLServer作为数据库为我的项目实现Liquibase(3.8.1版)。

我正在尝试为现有的sql server数据库设置基线,该数据库包含许多表、视图、存储过程和函数。

我成功地为表格生成了Angelog。

由于我所做的有很多存储过程、视图和函数,所以我从MSSQLSERVER生成了SQL脚本-

在使用liquibase update执行上述更改日志时,我收到错误“运行liquibase时出现意外错误:预期编码为“UTF-8”,但检测到“UTF-16LE”的BOM”

我需要快速帮助解决上述问题。请引导我在这里做错了什么。

 <?xml version="1.0" encoding="utf-8" ?>
<databaseChangeLog
  xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
         http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.8.xsd">
  <changeSet id="1" author="bob">
    <sqlFile path ="dbo.GetClaimDetails.sql"/>
  </changeSet>
</databaseChangeLog>

谢谢Archana

共有1个答案

平航
2023-03-14

这表明更改日志。xml或您的sqlFile具有意外的编码。我的第一个猜测是它是sql文件。

有几种方法可以检查文件的编码。既然你提到了SQL Server,我就假设你使用的是Windows而不是Linux。在Windows上,我使用记事本完成基本的编辑任务。当你在记事本中打开一个文件时,看看屏幕的右下角,它会显示文件的编码。

 类似资料:
  • 我有一个编码问题。 我有数百万个文本文件需要为语言数据科学项目进行解析。每个文本文件都编码为UTF-8,但我刚刚发现其中一些源文件的编码不正确。 例如我有一个中文文本文件,编码为UTF-8,但文件中的文本如下所示: 当我使用Python检测此中文文本文件的编码时: Chardet告诉我文件编码为UTF-8: UnicodeDammit还告诉我该文件编码为UTF-8: 同时,我知道这不是UTF-8,

  • 我有一个。csv文件,以西班牙语编写,因此它具有特殊字符,如ñ,á,é,í,ó,ú。因此,如果我在记事本中打开它,我可以看到所有正确书写的字符,并且我已经用UTF-8编码保存了文件。但是,当我打开RStudio并使用以下方式导入数据时: 我得到了所有数据集,但编码不正确,即: 应包括以下内容: 我已经尝试了所有的方法,我不知道还能做什么,因为我已经检查过R是否使用UTF-8编码,文件是否以相同的方

  • 我的rails应用程序遇到了问题,我最近从一个不同的开发人员那里接管了这个应用程序。虽然我知道错误意味着什么,我知道我需要强制所有的UTF-8,但没有运气。我已经尝试清理应用程序目录,并将所有文件更新为UTF-8(以前在不同的应用程序上工作过)。 我还阅读了关于ruby的UTF-8问题的不同帖子(例如这里和这里)。 当我运行或任何其他bundle操作时,我会得到以下信息: 还有以下绑定程序的其他错

  • 我有字节数组,它放在InputStreamReader中,用它做一些操作。 JVM有默认的cp1252编码,但是我转换成字节数组的文件有utf-8编码。此外,这个文件有德语umlauts。当我把字节数组放在InputStreamReader中时,java会将元音解码为错误的符号。例如,ürepression为。我试着把“utf-8”和charset.forname(“utf-8”).newdeco

  • 问题内容: 我有一个看起来像这样的python列表: 现在,我想将其编码为UTF-8。因此,尽管我应该使用: 但是打印清单仅给出 表示列表的第一个元素。甚至没有列表了。我究竟做错了什么? 问题答案:

  • 问题内容: 我正在从各种RSS提要中读取很多文本,并将其插入到数据库中。 当然,提要中使用了几种不同的字符编码,例如UTF-8和ISO 8859-1。 不幸的是,文本的编码有时会出现问题。例: “Fußball”中的“ß”在我的数据库中应如下所示:“Ÿ”。如果它是“”,则正确显示。 有时,“Fußball”中的“ß”在我的数据库中看起来像这样:“ß”。然后,当然会显示错误。 在其他情况下