迁移回车从oracle返回到sql server

时间:2014-01-20 11:38:15

标签: sql sql-server oracle sql-server-2008

我一直在尝试将一些回车从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端,我没问题:)

1 个答案:

答案 0 :(得分:2)

不知道这是怎么回事,但Jayvee指出了我正确的方向。重新测试了这个,它现在有效......

更新mytable 设置[ContactDetails] = REPLACE(contactdetails,'char(13)',CHAR(13))

全部谢谢