SQL 插入多行

SQL INSERT INTO multiple rows

所以,我在 Oracle Apex 上收到一条错误消息,上面写着 'ORA-00933: SQL command not properly ended' 。据我所知,我的命令中没有语法错误,如果我遗漏了什么并且有人可以帮助我,那就太好了。

我创建 table 的命令:

CREATE TABLE details
(
    ssn INTEGER NOT NULL,
    gender VARCHAR(255),
    hair VARCHAR(255)
);

我将行添加到 table 的命令:

INSERT INTO details(ssn, gender, hair) 
VALUES 
    (112, 'male', 'blonde'), 
    (132, 'female', 'blonde'),
    (882, 'male', 'brown'), 
    (542, 'female', 'black'), 
    (662, 'male', 'red') ;

原来我在 Oracle Apex 上使用 'SQL commands',它期望一次只有一个命令是 运行,因此命令未正确结束错误。

As far as I can see there is no syntax errors within my command

其实是有的。就 Oracle 而言,您使用的语法无效。


'SQL commands' on Oracle Apex, which expects only one command at a time

实际上,没有。你 可以 运行 几个,只是不是 SQL 而是 PL/SQL 这意味着你有将它们包含在 BEGIN-END 块中。看看截图:

但是请注意,并非一切 都可以运行 那样。例如,DDL 需要动态 SQL.