0

我们正在使用 Attunity 将数据从 Oracle 复制到 SQL Server。

在 Oracle 数据库中,表 MEMO 有一个 Description 列,它具有一定的价值。

(for ID = 1)
Description = 'This is test record'

但是 SQL Server 没有在描述列(其中 id =1)中显示该值,它显示为空。

当我使用 Dbeaver 查询同一个表时,Description 列显示一个字符“p”。

Description = 'P'

我试图在 Notepad++ 中复制启用显示所有字符但仍然没有用。帮助我解决这种奇怪的行为。

4

1 回答 1

0
 DECLARE @Result varchar(255)
       SET @Result = ''

       DECLARE @nchar nvarchar(1)
       DECLARE @position int
       SET @position = 1
       
       WHILE @position <= LEN(@nstring)
        BEGIN
            SET @nchar = SUBSTRING(@nstring, @position, 1)
        IF((ASCII(@nchar) BETWEEN 64 and 90) OR (ASCII(@nchar) BETWEEN 97 and 122) OR (ASCII(@nchar) BETWEEN 48 and 57) OR ASCII(@nchar) = 32)
             BEGIN
                    SET @Result = @Result + @nchar
             END
         ELSE 
            BEGIN
             DECLARE @asciichar varchar(10)
             SET @asciichar = ASCII(@nchar)
             SET @Result = @Result + REPLACE(@nchar,CHAR(@asciichar),'')
           END
       SET @position = @position + 1
   END

RETURN @Result

END
于 2020-07-22T02:41:01.723 回答