Permalink
Cannot retrieve contributors at this time
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
94 lines (79 sloc)
2.56 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head> | |
<title>Oracle | Ebean ORM</title> | |
<meta name="layout" content="_layout2/base-docs.html"/> | |
<meta name="bread1" content="Database platforms" href="/docs/database"/> | |
<meta name="bread2" content="Oracle" href="/docs/database/oracle"/> | |
<#assign n0_docs="active"> | |
<#assign n1_platforms="active"> | |
<#assign n2_oracle="active"> | |
</head> | |
<body> | |
<h2>Oracle</h2> | |
<h3>Testing</h3> | |
<p> | |
To test using Oracle set the <em>platform</em> to <code>oracle</code> in | |
<code>src/test/resources/application-test.yaml</code> | |
</p> | |
<p> | |
Refer to <a href="/docs/testing">docs / testing</a> if application-test.yaml doesn't exist yet. | |
</p> | |
<pre content="yml"> | |
ebean: | |
test: | |
platform: oracle # h2, postgres, mysql, oracle, sqlserver | |
ddlMode: dropCreate # none | dropCreate | migrations | |
dbName: test | |
</pre> | |
<p> | |
The above will use the following defaults: | |
</p> | |
<p> | |
The above will use the following defaults: | |
</p> | |
<table class="compact w100"> | |
<tr><th>username:</th><td>{databaseName}</td></tr> | |
<tr><th>password:</th><td>test</td></tr> | |
<tr><th>port:</th><td>1521</td></tr> | |
<tr><th>url:</th><td>jdbc:oracle:thin:@localhost:{port}:XE</td></tr> | |
<tr><th>driver:</th><td>oracle.jdbc.driver.OracleDriver</td></tr> | |
<tr><th>image:</th><td>oracleinanutshell/oracle-xe-11g:{version}</td></tr> | |
</table> | |
<h2 id="ebean-oracle">ebean-oracle dependency</h2> | |
<p> | |
We can use the <code>io.ebean:ebean-oracle</code> dependency rather than <code>io.ebean:ebean</code> if we want to only | |
bring in the Oracle database specific platform code. Depending on <code>io.ebean:ebean</code> will bring in all platforms. | |
</p> | |
<h2 id="types">Types</h2> | |
<h5>UUID</h5> | |
<p> | |
UUID is not a native Oracle type and can be mapped to either BINARY(16) or VARCHAR(36).. | |
</p> | |
<h2 id="history">History support</h2> | |
<p> | |
Oracle has native SQL2011 History support. | |
</p> | |
<h2 id="starting">Docker container</h2> | |
<p> | |
We can programmatically start a docker container version of Oracle. | |
</p> | |
<p> | |
The below uses <code>ebean-test-docker</code> dependency which already comes with <code>ebean-test</code>. | |
If we do not have a dependency on <code>ebean-test</code> then add <code>io.ebean:ebean-test-docker:5.0</code> | |
as a dependency. | |
</p> | |
<pre content="java"> | |
package main; | |
import io.ebean.docker.commands.OracleContainer; | |
public class Main { | |
public static void main(String[] args) { | |
OracleContainer container = OracleContainer.newBuilder("latest") | |
.user("my_user") | |
.build(); | |
container.start(); | |
} | |
} | |
</pre> | |
<@next_edit "DB2" "/docs/database/db2" "/docs/database/oracle/index.html"/> | |
</body> | |
</html> |