无法将数据插入表中

dat*_*ili 5 sql oracle oracle11g

我已成功使用此命令创建表

create  table Person(
  first_name varchar(25) not null,
  last_name varchar(25) not null,
  persoin_id number not null, 
  birth_date date,  
  country varchar (25),
  salary  number);
Run Code Online (Sandbox Code Playgroud)

现在我想在该表中插入数据

insert into  Person(persoin_id,first_name,last_name,salary,birth_date,country)
 values(100,'dato','datuashvili',350,to_date('01/01/10','DD/MM/YY'),'georgia');
 values(101,'irakli','oqruashvili',350,to_date('01/03/10','DD/MM/YY'),'georgia');
Run Code Online (Sandbox Code Playgroud)

插入第一行,但问题是第二行

1 rows inserted.
Run Code Online (Sandbox Code Playgroud)

从命令行10开始出错:
值(101,'irakli','oqruashvili',350,to_date('01/03/10','DD/MM/YY'),'georgia')
错误报告:
未知命令

请帮我确定是什么问题?谢谢

ype*_*eᵀᴹ 6

如果您在一个支持多行插入的RDBMS中INSERT:

insert into  Person(persoin_id,first_name,last_name,salary,birth_date,country)
   values
 (100,'dato','datuashvili',350,to_date('01/01/10','DD/MM/YY'),'georgia') , 
                                                       --- comma here ---^
 (101,'irakli','oqruashvili',350,to_date('01/03/10','DD/MM/YY'),'georgia') ;
 ^--- no "values" here
Run Code Online (Sandbox Code Playgroud)

如果不是(如Oracle),则必须发出两个insert语句:

insert into  Person(persoin_id,first_name,last_name,salary,birth_date,country)
   values
 (100,'dato','datuashvili',350,to_date('01/01/10','DD/MM/YY'),'georgia') ;
                                                  --- as it was  here ---^

insert into  Person(persoin_id,first_name,last_name,salary,birth_date,country)
   values
 (101,'irakli','oqruashvili',350,to_date('01/03/10','DD/MM/YY'),'georgia') ;
Run Code Online (Sandbox Code Playgroud)

或使用这种方法:

insert into  Person(persoin_id,first_name,last_name,salary,birth_date,country)
   select
 (100,'dato','datuashvili',350,to_date('01/01/10','DD/MM/YY'),'georgia') 
       from dual
   union all select
 (101,'irakli','oqruashvili',350,to_date('01/03/10','DD/MM/YY'),'georgia') 
       from dual
 ;
Run Code Online (Sandbox Code Playgroud)