# Create Oracle packages

**URL:** <https://forum.liquibase.org/t/create-oracle-packages/2721>\
**Category:** General Discussion\
**Created:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721 "2013-10-16T17:57:00Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Guest](https://avatars.discourse-cdn.com/v4/letter/g/8dc957/32.png) [@Guest](https://forum.liquibase.org/u/Guest)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/1 "2013-10-16T17:57:00Z")

</div>

I found that if I do not add ‘/’ symbols but set splitStatements attribute in sqlfile tag all works fine.

1.   
&nbsp;   
&nbsp;   

But it’s all ok if I split the package into two files.

Our developers use PL-SQL Developer IDE and it’s save all the packages (specifications and bodies) into single files like this:

1. CREATE OR REPLACE PACKAGE ORAPACK IS  
&nbsp; &nbsp; PROCEDURE PROC1;  
END ORAPACK;  
/  
CREATE OR REPLACE PACKAGE BODY ORAPACK IS  
&nbsp; &nbsp;PROCEDURE PROC1&nbsp;  
&nbsp; &nbsp; AS  
&nbsp; &nbsp; BEGIN  
&nbsp;

&nbsp; &nbsp; DBMS\_OUTPUT.PUT\_LINE(‘SOMETHING USEFUL’);  
&nbsp; &nbsp; END;  
END ORAPACK;  
/

And in this case I cannot use&nbsp;splitStatements attibute because the package on Oracle server is created but it’s invalid.

What should I do to create the package from the single file with ‘/’ symbols as delimiters?

---

<div class="post-metadata">

**Author:** ![nvoxland](https://avatars.discourse-cdn.com/v4/letter/n/87869e/32.png) [@nvoxland](https://forum.liquibase.org/u/nvoxland)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/2 "2013-10-16T17:57:00Z")

</div>

endDelimiter should be allowed on sqlFile. Are you referencing the correct XSD version in your XML root node? Also, what version of liquibase are you running?  
  
Nathan

---

<div class="post-metadata">

**Author:** ![un1382001025181r69id](https://avatars.discourse-cdn.com/v4/letter/u/49beb7/32.png) [@un1382001025181r69id](https://forum.liquibase.org/u/un1382001025181r69id)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/3 "2013-10-16T17:57:00Z")

</div>

Aha!

I must be blind. I took xml changeset file from internet example and it has different namespaces.

I took namespaces from [the site](http://www.liquibase.org/documentation/xml_format.html) and everything works fine.

Thank you for your patience.

---

<div class="post-metadata">

**Author:** ![nvoxland](https://avatars.discourse-cdn.com/v4/letter/n/87869e/32.png) [@nvoxland](https://forum.liquibase.org/u/nvoxland)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/4 "2013-10-16T17:57:00Z")

</div>

No problem, glad you got it working.

Nathan

---

<div class="post-metadata">

**Author:** ![Guest](https://avatars.discourse-cdn.com/v4/letter/g/8dc957/32.png) [@Guest](https://forum.liquibase.org/u/Guest)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/5 "2013-10-16T17:57:00Z")

</div>

Hello.

I’m trying to create an Oracle packages. I created two files - orapack.pcs as package specification and orapack.pcb as package body.

Very simple:&nbsp;

1. CREATE OR REPLACE PACKAGE ORAPACK IS  
&nbsp; PROCEDURE PROC1;  
END ORAPACK;

and

1. 

2. 

3. 

Then here is my changeset:

&nbsp;

But when I called the LiquiBase I get error as follows:

1. 

I read [here](http://www.liquibase.org/documentation/changes/sql.html) and about endDelimiter tag:

> Delimiter to apply to the end of the statement. Defaults to ‘;’, may be set to ‘’.

I tried to set on the last lines in my script files the end delimiter as ‘/’ symbol:

1. 

2. 

and

1. 

2. 

And then I changed my changeset file as I found on forum - [this link](http://forum.liquibase.org/topic/linedelimiters-in-files-included-by-sqlfile):

1.   
&nbsp;   
&nbsp;   
 

But I get another error:

1. Liquibase update Failed: Error parsing line 19 column 57 of : cvc-complex-type.3.2.2: Attribute 'endDelimiter' is not allowed to appear in element 'sqlFile'.

I cannot put package’s texts in xml section of changeset, only include them via sqlfile tag - the real packages are very complicated and a lot of developers work on them.

What should I do to make the LiquidBase to create y package?

Thank you.

---

<div class="post-metadata">

**Author:** ![Guest](https://avatars.discourse-cdn.com/v4/letter/g/8dc957/32.png) [@Guest](https://forum.liquibase.org/u/Guest)\
**Post date:** [October 16, 2013, 5:57pm UTC](https://forum.liquibase.org/t/create-oracle-packages/2721/6 "2013-10-16T17:57:00Z")

</div>

I downloaded the last version from the site - liquibase-3.0.6-bin.zip.

This is the header of the changeset xml file:

1. \<databaseChangeLog  
 xmlns="http://www.liquibase.org/xml/ns/dbchangelog/1.7"  
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
 xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog/1.7  

[http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.7.xsd](http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-1.7.xsd)"\>
