Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 发行转换NTEXT&;nvarchar(255)至nvarchar(最大值)_Sql Server_Ssis_Sql Server 2016 - Fatal编程技术网

Sql server 发行转换NTEXT&;nvarchar(255)至nvarchar(最大值)

Sql server 发行转换NTEXT&;nvarchar(255)至nvarchar(最大值),sql-server,ssis,sql-server-2016,Sql Server,Ssis,Sql Server 2016,如何将NTEXT列转换为NVARCHAR(MAX) 我有4个数据库,其中四个数据库中都有一个表。此表中存在一个Notes列,其类型为NTEXT,但在一个数据库中,该列为nvarchar(255) 因此: 3NTEXT 1nvarchar(255) 我的ETL从这四个表中获取数据,并将它们放入一个表中,Notes列的类型为nvarchar(max) 直到我的ETL不起作用,我才意识到其中一列是nvarchar(255),因为这四个表的结构应该是相同的 错误: [Source DB[25]]错误

如何将NTEXT列转换为NVARCHAR(MAX)

我有4个数据库,其中四个数据库中都有一个表。此表中存在一个
Notes
列,其类型为
NTEXT
,但在一个数据库中,该列为
nvarchar(255)

因此:

  • 3
    NTEXT
  • 1
    nvarchar(255)
我的ETL从这四个表中获取数据,并将它们放入一个表中,
Notes
列的类型为
nvarchar(max)

直到我的ETL不起作用,我才意识到其中一列是
nvarchar(255)
,因为这四个表的结构应该是相同的

错误:

[Source DB[25]]错误:Source发生错误 DB.Outputs[OLE DB源输出]。源上的列[Notes] DB.Outputs[OLE DB源输出]。返回的列状态为: “DBSTATUS_不可用”


我猜这就是问题所在,因为错误并不具体。如何将此列转换为
nvarchar(max)

在oledb源代码中,从表中写入select并将列转换为NTEXT,即

SELECT ..., Convert(ntext, Notes) as Notes

所以,让我直截了当地说:整个问题可以简单地重写为“如何将一个NTEXT列转换为NVARCHAR(MAX)?”对吗?在ole db源代码中,您可以从表中编写一个select并将该列转换为NTEXT吗。选择…,将(ntext,Notes)转换为Notes?@MarkWojciechowicz,这很有效!谢谢。@MarkWojciechowicz为什么不把这篇文章写成一篇简单而有用的文章呢