首页 > 解决方案 > SQL Server bacpac 导出导入错误 | 数据长度增加

问题描述

在从 Azure SQL 数据库中以 bacpac 格式导出数据然后将其还原(使用 SSMS)时,我们遇到了一个奇怪的错误。它抛出与

截断值:2628

在具有 size 的列之一中Varchar(256),排序规则是Latin1_General_100_CI_AS_SC_UTF8(在源和目标)

由于某种原因,数据长度为 256 个字符(Len 也是 256)的值很少被转换为 258 Datalength(Len 仍然是 256)然后失败。

当我们在 bacpac 文件中将此字段的大小更改为 512 时,它通过了。有什么线索吗?

还要注意的另一件事是,在源代码中此字段中的编码被破坏,当我们在 SSMS 中查询值时,打印的字符不是人类可读的。我们将相同的值存储在另一个字段中(出于审计目的),在那里我们可以以可读的格式找到它们。

谢谢

标签: sql-serverazure-sql-databasebacpac

解决方案


推荐阅读