Skip to content

duanshuaimin/jamdb_oracle

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JamDB Oracle

Erlang driver and Ecto adapter for Oracle Database

Goals

  • No parameterized module.
  • No process dictionary.
  • No ports.
  • No NIF's.
  • All code written exclusively in Erlang.

Getting Started

%% Set connection options
1> Opts = [
    {host, "jamdb-oracle-dev.erlangbureau.dp.ua"},
    {port, 1521},
    {user, "jamdbtest"},
    {password, "jamdbtest"},
    {sid, "JAMDBTEST"},
    %%{service_name, "JAMDBTEST"},
    {app_name, "jamdbtest"}
].

%% Connect
2> {ok, Pid} = jamdb_oracle:start_link(Opts).
{ok,<0.37.0>}

%% Simple select
3> {ok, Result} = jamdb_oracle:sql_query(Pid, "select 1 as one, 2 as two, 3 as three from dual").
{ok,[{result_set,[<<"ONE">>,<<"TWO">>,<<"THREE">>],
                 [],
                 [[{1},{2},{3}]]}]}

%% Select with parameters
4> {ok, Result2} = jamdb_oracle:sql_query(Pid, {"select 1 as one, sysdate, rowid from dual where 1=:1 ",[1]}).
{ok,[{result_set,[<<"ONE">>,<<"SYSDATE">>,<<"ROWID">>],
                 [],
                 [[{1},{{2016,8,1},{13,14,15}},"AAAACOAABAAAAWJAAA"]]}]}

Running Tests

First, supply connection details for your test database in test/jamdb_oracle_test.hrl and test/jamdb_oracle_test.exs. Once the connection configuration is saved, run the test suite with rebar3 ct and mix test.

Author

Mykhailo Vstavskyi

Contributors

Sergiy Kostyushkin

Releases

No releases published

Packages

No packages published

Languages

  • Erlang 74.7%
  • Elixir 25.2%
  • Makefile 0.1%