有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何将单个sql语句从Oracle sql脚本中分离出来,以便从java代码中执行

我有OracleDB11gEnterpriseEdition,我想从我的java代码中执行sql脚本。 我正在从一个数据库中读取此sql脚本。sql文件和脚本包含诸如create tablecreate typealter tabledrop typedrop procedureinsert into等语句,以及带有beginend的pl/sql块和所有此类结构

我的问题是,如何将单个sql语句从java代码中分离出来以供执行?在MS SQL中,我可以简单地用GO关键字分隔这些SQL语句,而在Oracle db中没有这样的分隔符。那么,在Oracle db脚本中,通常使用什么作为分隔符呢


例如,我在我的sql脚本中有以下create触发器块以及其他sql语句。这里我有分号,我不能把它看作是终止语句的SQL语句(PL/SQL块本身可以包含多个分号分隔的语句)。这意味着我不能使用类似于GO(在MS SQL中)的;

CREATE OR REPLACE TRIGGER SQLVersionHistory_SeqNum_TRG
   BEFORE INSERT 
   ON SQLVersionHistory
   FOR EACH ROW
   BEGIN
    :NEW.SequenceNumber := SQLVersionHistory_SeqNum.NEXTVAL;
   END;

共 (0) 个答案