现象:
在 Oracle SQL 命令中执行如下 SQL 语句:insert into province values('8','辽宁省')
/
insert into province values('9','吉林省')
/
insert into province values('10','黑龙江省')
/提示错误如下:
ORA-00933: SQL 命令未正确结束请问是什么原因?PS:
上面语句单条执行是正确的~

解决方案 »

  1.   

    一个语句以逗号结束!
    insert into province values('8','辽宁省');insert into province values('9','吉林省');insert into province values('10','黑龙江省');
      

  2.   

    oracle中多条语句运行时,每一条语句都要以分号结束
      

  3.   


    begin
    insert into province values('8','辽宁省');
    insert into province values('9','吉林省');
    insert into province values('10','黑龙江省');
    end;
    /
      

  4.   

    Oracle 命令结束文档说有3种方式 分号是一种,我上面那也是一种,还有一种是换行就可以,所以说这两种是等价的~
    用分号结束这种方式我也试过了,报的错误是:有非法字符
      

  5.   

    xman_78tom 谢谢这位兄弟~ 加入 begin 和 end 后插入成功了~ 但能进一步解释下吗,我想会有许多人想知道的! 谢谢~
      

  6.   


    insert into province values('8','辽宁省');
    insert into province values('9','吉林省');insert into province values('10','黑龙江省');
      

  7.   

    这样写相当于一个匿名块而已 ,也可以这样
    begin
    insert into province values('8','辽宁省');
    commit;
    end;
      

  8.   


    我看了下关于 SQL Command 的说明:
    A SQL command can contain SQL statements or PL/SQL blocks.
    但是没找到关于执行包含 PL/SQL blocks 的 SQL command 时应该注意什么~
    能不能理解为,在Oracle 的 sql command 窗口中执行 blocks 的时候需要加上begin... end命令才可以?
      

  9.   

    block的基本机构是
    delcare
     varlist
    begin
     dosomething
    end;