Azure sql database 正在尝试导出Azure SQL DB-获取奇怪的VARBINARY(MAX)错误。。。数据库中没有

Azure sql database 正在尝试导出Azure SQL DB-获取奇怪的VARBINARY(MAX)错误。。。数据库中没有,azure-sql-database,Azure Sql Database,最近,我无法在同一订阅和数据中心内导出我的SQL Azure DB 我得到的错误是: “在服务操作期间遇到错误。无法从数据库导出架构和数据。发生了一个或多个错误。发生了一个或多个错误。发生了一个或多个错误。发生了一个或多个错误。序号65处的varbinary列应在提供的SqlDataReader中以DATALENGTH(col)开头。” 数据库中没有VARBINARY列。我已使用以下方法对此进行了检查: SELECT table_name [Table Name], column_name [C

最近,我无法在同一订阅和数据中心内导出我的SQL Azure DB

我得到的错误是:

“在服务操作期间遇到错误。无法从数据库导出架构和数据。发生了一个或多个错误。发生了一个或多个错误。发生了一个或多个错误。发生了一个或多个错误。序号65处的varbinary列应在提供的SqlDataReader中以DATALENGTH(col)开头。”

数据库中没有VARBINARY列。我已使用以下方法对此进行了检查:

SELECT table_name [Table Name], column_name [Column Name]
FROM information_schema.columns where data_type = 'VARBINARY' 
唯一重要的变化是我对某些列使用了加密列类型(确定性)。这会阻止导出并产生此类错误吗

目前我无法出口。但是我可以复制一个数据库

请给我一些建议,我将不胜感激

编辑

在进一步的研究中,我觉得加密的列阻止了导出,因为从所有列中删除了加密,我现在可以导出数据库了。我现在通过SSMS的“导出数据层”功能来尝试这一点。我还向尚在进行中的李女士提出了这一点

编辑2


我已经诊断出问题的原因是使用VARCHAR(8000)而不是VARCHAR(MAX)作为加密列的数据类型。希望不需要将这些类型更改为VARCHAR(MAX)。

当前Sql序列化程序不支持加密列上长度为4000的nvarchar列。这就是您收到该错误的原因。我收到的信息表明此限制将被取消。

谢谢您。但是我的问题是varchar(8000),varchar(max)可以工作。你是说任何超过varchar(4000)的东西都会有问题吗?我还听说这是一个问题,将在大约2个月内解决。微软的工程师正在解决这个问题。我使用您创建的此线程来提醒他们注意此主题,但他们已经创建了一个项目来处理此主题。感谢您报告此主题以及您提供的详细信息。这仍然是一个问题吗?@DigiBanks99我无法再访问正在处理此主题的Microsoft工程师。