将保存的数据恢复为文本,同时应为ntext

时间:2013-05-27 11:18:56

标签: stored-procedures unicode sql-server-2008-r2 restore ntext

我在SQL Server 2008 R2上有一个数据库。在一个表中,有一个列应该是ntext类型,但它被设计为文本列。因此,数据被发送,保存为文本,然后保存为问号(无法识别)。

我已将类型更改为ntext。有没有办法恢复这些保存的数据?我想过跟踪发送到存储过程的捕获数据并手动维护它,但是我搜索了一下,发现没有结果。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

不,除非您拥有原始数据,否则数据会丢失。一旦写入非unicode列,unicode数据将丢失。这在我的回答中得到了证明:Determine varchar content in nvarchar columns

另请注意ntext is deprecated. You should use nvarchar(max)

  

ntext,text和image数据类型将在Microsoft SQL Server的未来版本中删除。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用nvarchar(max),varchar(max)和varbinary(max)。