我有一个需要帮助的问题,请给我一个建议。 我想通过语句将数据库从一个Oracle服务器插入到SQL服务器:
SELECT * INTO ABC_temp SELECT * FROM DIM_PROVINCE
在DIM_PROVINCE和ABC_temp中有3列:PROVINCE_ID
,PROVINCE_NAME
和NOTE
问题是它无法显示VietNamese语言。在网上寻求帮助之后,每个人都表明我必须在INSERT语句之前使用N'字符。
那么,我该如何替换这句话。
INSERT INTO ABC_temp values (N’abc,N’abc,N’abc)
声明如下:
SELECT * INTO ABC_temp SELECT * FROM DIM_PROVINCE
谢谢!
答案 0 :(得分:1)
我认为你不需要。
'N'
用于表示字符串是unicode文字,因此如果Oracle中的数据类型也是unicode,则可能不需要转换(SQL Server从{{进行隐式转换) 1}}到VARCHAR
)。
否则,您可以投射值(请参阅CAST and CONVERT (Transact-SQL)
答案 1 :(得分:0)
你把N放在单引号之外。
INSERT INTO ABC_temp values (N'abc', N'abc', N'abc')
SQL语句应遵循以下语法:
insert into ABC_temp
select * from DIM_PROVINCE
(在SQL Server中,您就是这样做的。我不确定Oracle中的语法。)