Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 我在Oracle中遇到一个错误,关于一个命令没有正确结束_Sql_Oracle - Fatal编程技术网

Sql 我在Oracle中遇到一个错误,关于一个命令没有正确结束

Sql 我在Oracle中遇到一个错误,关于一个命令没有正确结束,sql,oracle,Sql,Oracle,我正在尝试执行多表插入,但由于某些原因,我得到了一个错误。我在网上查了一下,试着加了一个半圆,但没用 错误为SQL错误:ORA-00933:SQL命令未正确结束 这是我的密码 Insert Into EMP (empno,ename,job,mgr,sal,deptno) Value (4600,'BOB','CONSULT',4699,900,60), (5300,'AILEEN','MANA

我正在尝试执行多表插入,但由于某些原因,我得到了一个错误。我在网上查了一下,试着加了一个半圆,但没用

错误为SQL错误:ORA-00933:SQL命令未正确结束

这是我的密码

Insert Into EMP (empno,ename,job,mgr,sal,deptno)
Value    (4600,'BOB','CONSULT',4699,900,60),                                                
(5300,'AILEEN','MANAGER',7839,1800,40),
(9873,'RYAN','CONSULT',4699,800,50)

非常感谢您的帮助。

您不能在一条语句中执行多个插入。您必须为每一个项目分别编写插入内容,例如:

insert into table_1 (...) values (...);
insert into table_1 (...) values (...);
etc.

另外,请注意,它是
,而不是

,您不能在一条语句中执行多个插入。您必须为每一个项目分别编写插入内容,例如:

insert into table_1 (...) values (...);
insert into table_1 (...) values (...);
etc.

另外,请注意,它是
,而不是

,您还可以使用此命令将所有记录插入一条语句中

Insert all Into EMP (empno,ename,job,mgr,sal,deptno)
Values    (4600,'BOB','CONSULT',4699,900,60)
Into EMP (empno,ename,job,mgr,sal,deptno)
values (5300,'AILEEN','MANAGER',7839,1800,40)
Into EMP (empno,ename,job,mgr,sal,deptno)
values (9873,'RYAN','CONSULT',4699,800,50)
select * from dual;

还可以使用此命令在一条语句中插入所有记录

Insert all Into EMP (empno,ename,job,mgr,sal,deptno)
Values    (4600,'BOB','CONSULT',4699,900,60)
Into EMP (empno,ename,job,mgr,sal,deptno)
values (5300,'AILEEN','MANAGER',7839,1800,40)
Into EMP (empno,ename,job,mgr,sal,deptno)
values (9873,'RYAN','CONSULT',4699,800,50)
select * from dual;

您始终可以使用
INSERT-in…SELECT..FROM-dual
在每个选择之间使用
UNION-ALL

insert into EMP (empno,ename,job,mgr,sal,deptno)
select 4600,'BOB','CONSULT',4699,900,60
from dual
union all
select 5300,'AILEEN','MANAGER',7839,1800,40
from dual
union all
select 9873,'RYAN','CONSULT',4699,800,50
from dual;

或者您可以使用:

INSERT ALL 
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (4600, 'BOB', 'CONSULT', 4699, 900, 60)
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (5300, 'AILEEN', 'MANAGER', 7839, 1800, 40)
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (9873, 'RYAN', 'CONSULT', 4699, 800, 50)
SELECT * 
FROM dual;

请参见您可以始终使用
插入到…选择..从双
在每个选择之间使用
联合所有

insert into EMP (empno,ename,job,mgr,sal,deptno)
select 4600,'BOB','CONSULT',4699,900,60
from dual
union all
select 5300,'AILEEN','MANAGER',7839,1800,40
from dual
union all
select 9873,'RYAN','CONSULT',4699,800,50
from dual;

或者您可以使用:

INSERT ALL 
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (4600, 'BOB', 'CONSULT', 4699, 900, 60)
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (5300, 'AILEEN', 'MANAGER', 7839, 1800, 40)
    INTO emp (empno, ename, job, mgr, sal, deptno)
         VALUES (9873, 'RYAN', 'CONSULT', 4699, 800, 50)
SELECT * 
FROM dual;

请参见

value需要是pluralvalue需要是pluralok,我以为他们在Oracle的最新版本中更改了它,但我猜我是被错误告知的。感谢您的及时回复。您可以在一个声明中插入多个内容,请参阅此处的链接@stevo谢谢,我不知道。虽然语法很奇怪:)好吧,我以为他们在最新版本的Oracle中更改了它,但我猜我是被错误告知的。感谢您的及时回复。您可以在一个声明中插入多个内容,请参阅此处的链接@stevo谢谢,我不知道。语法很奇怪,但是:)有没有理由使用这种方法而不是上面给出的方法?@AdamHalegua没有理由,我只是想说明有多种方法可以执行此操作。这真的取决于你想用什么方法。哦,好吧,我只是仔细检查了一下。我只是想确保我完全理解这一点。感谢您的回复。@AdamHalegua如果您发现任何答案有用,请务必通过左边的复选标记接受。是否有理由使用这种方法而不是上面给出的方法?@AdamHalegua没有理由,我只是说明有多种方法可以执行此操作。这真的取决于你想用什么方法。哦,好吧,我只是仔细检查了一下。我只是想确保我完全理解这一点。感谢您的回复。@AdamHalegua如果您发现任何答案有用,请务必通过左边的复选标记接受。