0

由于 ADW 不支持使用标准 INSERT ... VALUES 语法插入多条记录,因此解决方法是 SELECT .. UNION ALL 为每条记录。

例如:

-- this does work
INSERT INTO Banana.HamburgerTable (UnicodeColumn nvarchar(255)) 
VALUES (n'公');

-- this won't work
INSERT INTO Banana.HamburgerTable (UnicodeColumn nvarchar(255)) 
VALUES (n'公'),
(n'司') ;

-- this should work
INSERT INTO Banana.HamburgerTable 
SELECT n'公' UNION ALL
SELECT n'司'; 

但是在实践中,第二种语法会返回此错误:

Failed to execute query. Error: Invalid column name 'n'.

为什么来?

4

1 回答 1

0

字符串开头的 unicode 'n' 指示符在 select 语句中区分大小写,但对插入值不区分大小写。所以上述语句的正确版本是:

INSERT INTO Banana.HamburgerTable 
SELECT N'公' UNION ALL
SELECT N'司'; 
于 2019-09-18T14:34:11.720 回答