Skip to content

Latest commit

 

History

History
101 lines (86 loc) · 4.07 KB

README.md

File metadata and controls

101 lines (86 loc) · 4.07 KB

Oracle db with GraphQl 🚀

GraphQL seems cool. Oracle database is cool. Let's combine them.

About

These materials go along with the Oracle Friday Stand-Up - Database Cloud Service Given by @sblack4. They are free to take and use but we provide no warranty per the MIT LICENSE but feel free to submit an issue or a pull request! I love solving problems and meeting other nerdy devs! ✌️

Getting Started

  • Connect to Oracle Database with oracledb (a 🔥 database)
  • Build SQL Queries with knex (think: ORM)
  • Convert GraphQL and SQL with join monster (GraphQL <-> SQL translator)
  • Serve the GraphQL with koa (basically express-lite)
  • Visualize cool GraphQL browser with graphiql (execute graphql queries in the browser)

tl:dr;

  1. Watch the recording of Oracle Friday Stand-Up - Database Cloud Service
  2. Clone this Repo with git clone https://github.com/unofficialoraclecloudhub/oracledb-graphql-demo.git
  3. Head to unofficialoraclecloudhub.github.io/oracledb-graphql-demo/ and follow the directions in the docs

Test with 🐳 Docker 🐳

If you have docker, you can run database and the server

Docker images for Oracle Databse 12c and node 6 are provided in the Docker folder

The easiest way to build them is

cd Docker
docker-compose build
docker-compose up

Whats actually in here?

$ tree -d -I node_modules
.
├── Docker                  # all the files and binaries to build
│   ├── db                  # the docker images 
│   │   └── oracle-sql      # one with oracle database xe 12c
│   └── web                 # the other with node 6 & the oracle instantclient libraries
├── docs                    # the docs static site (Gatsby)
│   ├── content
│   │   ├── lessons
│   │   └── posts
│   ├── data
│   ├── public
│   │   ├── about
│   │   ├── categories
│   │   │   └── tech
│   │   ├── lesson-five
│   │   ├── lesson-four
│   │   ├── lesson-one
│   │   ├── lesson-six
│   │   ├── lesson-three
│   │   ├── lesson-two
│   │   ├── logos
│   │   ├── post-one
│   │   └── static
│   ├── src
│   │   ├── components
│   │   │   ├── About
│   │   │   ├── Disqus
│   │   │   ├── Layout
│   │   │   ├── PostListing
│   │   │   ├── PostTags
│   │   │   └── SocialLinks
│   │   ├── layouts
│   │   │   └── css
│   │   ├── pages
│   │   └── templates
│   └── static
│       └── logos
└── src                     # the graphql app
    ├── common
    ├── data                # you can do the same thing with sqlite 
    │   ├── demo-data-csv   # and maybe postgres (I have not tested)
    │   ├── postgress
    │   └── sqllite
    ├── schema-basic
    ├── schema-paginated
    └── test                

45 directories

Acknowledgements ❤️

The open source community has been overly generous with software and documentation (as always)

Special thanks to