在SQL server中通过链接服务器获取数据时出错

在SQL server中通过链接服务器获取数据时出错,sql,sql-server-2014,linked-server,Sql,Sql Server 2014,Linked Server,我使用链接服务器在SQL server 2014上运行以下查询 select contact_faxnumber from [ausnry-sqltest1].elk_uat.dbo.crm_view_contact 并得到以下错误 链接服务器“ausnry-sqltest1”的OLE DB提供程序“SQLNCLI”返回的数据与列“[ausnry-sqltest1].[elk_uat].[dbo].[crm_view_contact.]的预期数据长度不匹配。请与传真号码联系”。预期(最大)数据

我使用链接服务器在SQL server 2014上运行以下查询

select contact_faxnumber from [ausnry-sqltest1].elk_uat.dbo.crm_view_contact
并得到以下错误

链接服务器“ausnry-sqltest1”的OLE DB提供程序“SQLNCLI”返回的数据与列“[ausnry-sqltest1].[elk_uat].[dbo].[crm_view_contact.]的预期数据长度不匹配。请与传真号码联系”。预期(最大)数据长度为15,而返回的数据长度为16

如果我直接在链接服务器上运行相同的查询,那么它工作正常


请建议怎么做?

我猜
crm\u view\u contact
是一个视图(基于名称)?在这种情况下,听起来基础表模式可能已更改,但视图的元数据尚未更新,因此它认为一个列的长度为15个字符,而实际上它的长度更长

如果是这种情况,则可以使用以下命令在源服务器上刷新视图元数据:

sp_refreshview [ @viewname = ] 'viewname' 

在一个主题上存在一些问题,例如,,,和。。。没有标记为重复,因为它们都不处理SQL Server与SQL Server的对话,但可能提供进一步的调查途径。