Giter VIP home page Giter VIP logo

pgapp's Introduction

pgapp

This code is a front end for epgsql that adds a pool (poolboy, for the moment), and code to isolate crashes in the epgsql library: if your database goes down, you probably don't want the rest of the application to fail as well.

Build and start the application with Make:

- Copy and/or rename the file `pgapp.config.sample` into `pgapp.config`
- Enter your configuration data in `pgapp.config`
- Run:

    ~:$ make
    ~:$ make run

- To test it, just run:

    > pgapp:equery(a_pool_name, "select current_date", []).

  where `a_pool_name` is the name of one of the pools in your `pgapp.config` file.

API use: - Simple pool:

    application:ensure_all_started(pgapp).
    pgapp:connect([{size, 10}, {database, "mydb"}, {username, "foo"}, {password, "bar"}]).
    pgapp:equery("select current_date", []),
    pgapp:with_transaction(fun() ->
                                 pgapp:squery("update ..."),
                                 pgapp:squery("delete from ..."),
                                 pgapp:equery("select ? from ?", ["*", Table])
                           end).

- Multi pool:

    application:ensure_all_started(pgapp).
    pgapp:connect(a_pool_name, [{size, 10}, {database, "mydb"}, {username, "foo"}, {password, "bar"}]).
    pgapp:equery(a_pool_name, "select current_date", []).

The equery and squery API's are the same as those of epgsql: https://github.com/epgsql/epgsql

Note: It is still experimental, and is likely to break. The API is not stable!

See [Changelog].

pgapp's People

Contributors

aherranz avatar davidw avatar dfedyaschin avatar edhollandal avatar fooflare avatar rymir avatar seriyps avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.