我一直在尝试将一些回车从oracle varchar2字段迁移到sql server varchar字段,但它根本不起作用。
我在Oracle中使用了以下形式的代码:
' _ 联系人 __ '|| chr(13)||
在Oracle中运行得非常好,但是在SSIS将数据提取到sql server时似乎迷路了。
我试图通过以下内容:
'Name: ' || nvl2(p.surname || p.forename ,p.surname || ', ' || p.forename,'None Recorded') || 'char(13)' ||
'Organisation: ' || nvl(a.agency_name, 'None Recorded')
as ContactDetails
但是回车最终嵌入为文本。例如“制作Contact_ _ _char的人(13)姓名:无”
我已经尝试在sqlserver端以各种方式替换char(13)但是不能将结果变成除了文本中嵌入的char(13)以外的任何内容。
例如
update mytable set [ContactDetails] = REPLACE(contactdetails,'char(13)',CHAR(13))
update mytable set [ContactDetails] = REPLACE(contactdetails,'char(13)',''' + CHAR(13) + ''' )
像"select myfield + char(13) + 'test text'
之类的东西给了我我想要的结果,所以我可以排除真正的愚蠢错误。
任何人都可以提供任何建议吗?在Oracle或sqlserver端,我没问题:)
答案 0 :(得分:2)
不知道这是怎么回事,但Jayvee指出了我正确的方向。重新测试了这个,它现在有效......
更新mytable 设置[ContactDetails] = REPLACE(contactdetails,'char(13)',CHAR(13))
全部谢谢