• Stars
    star
    170
  • Rank 223,362 (Top 5 %)
  • Language
    JavaScript
  • Created about 12 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

NoSQL node.js connector for MySQL Cluster

Database Jones

Introduction

See our latest presentation [on slideshare] (http://www.slideshare.net/jdduncan/building-nodejs-applications-with-database-jones).

This package provides a fast, easy, and safe framework for building database applications in Node.js.

Here is an example using Database Jones to store a single object (a JSON literal) into an existing MySQL table:

var jones = require("database-jones");

var connectionProperties = new jones.ConnectionProperties("mysql");

jones.openSession(connectionProperties).then(
  function(session) {
    var user = { id: 1, name: "Database Jones"};
    return session.persist("user", user);
  }).
  then(function() { console.log("Complete"); }, console.trace).
  then(jones.closeAllOpenSessionFactories);

Key features include:

  • Simple API for create, read, update, delete
  • Bulk operations for high performance
  • Support for ACID transactions, both explicit and implicit
  • Flexible mapping from JavaScript objects to relational tables
  • A fluent Query language using domain model tokens
  • Default mapping of a relational table to a simple object
  • Projection of several related tables to a complex object structure
  • Asynchronous API using well-known node.js callback patterns
  • Promises/A+, allowing easier management of callbacks
  • Connection pooling, allowing in-process scale up

Quick Install

The whole project can be used directly from a github clone if core.symlinks is set to true.

git config --global --add core.symlinks true
git clone http://github.com/mysql/mysql-js

To use the mysql adapter, you will also need node-mysql.

To use the ndb adapter, you need MySQL Cluster, and you must use node-gyp to build the C++ source code under jones-ndb.

Sample applications

More information

See the complete README.md file under database-jones

Directory Structure

  • database-jones

    Lightweight object mapping layer for SQL and NoSQL databases.

  • jones-mysql

    Jones adapter for MySQL. Licensed GPL v2. Requires node-mysql.

  • jones-ndb

    Native Jones adapter for MySQL Cluster. Licensed GPL v2. Uses the low-level NDBAPI for data operations, but requires jones-mysql for certain metadata operations such as creating tables.

  • jones-test

    A high-performance stand-alone test harness. Jones-test is able to manage concurrent and serial tests, run hundreds of tests per second, and run combined test suites from several projects (for instance, running both the common database-jones tests and the jones-mysql specific tests all from a single test driver).

  • jones-promises

    An implementation of Promises/A+ used by database-jones.

  • unified_debug

    A printf-style debug library providing a single diagnostic environment for both C and JavaScript.

  • perftest

    Contains jscrund, a simple benchmarking tool for Jones.

  • loader

    A data loader implemented as a Jones application

  • samples

    Sample code using Jones

  • shell

    A database command shell based on Jones

More Repositories

1

mysql-server

MySQL Server, the world's most popular open source database, and MySQL Cluster, a real-time, open source transactional database.
C++
10,830
star
2

mysql-connector-j

MySQL Connector/J
Java
908
star
3

mysql-workbench

MySQL Workbench is a unified visual tool for database architects, developers, and DBAs. MySQL Workbench provides data modeling, SQL development, and comprehensive administration tools for server configuration, user administration, backup, and much more.
C++
898
star
4

mysql-connector-python

MySQL Connector/Python is implementing the MySQL Client/Server protocol completely in Python. No MySQL libraries are needed, and no compilation is necessary to run this Python DB API v2.0 compliant driver. Documentation & Download: http://dev.mysql.com/doc/connector-python/en
Python
876
star
5

mysql-sys

The MySQL sys schema
PLpgSQL
828
star
6

mysql-operator

MySQL Operator for Kubernetes
Python
767
star
7

mysql-connector-cpp

MySQL Connector/C++ is a MySQL database connector for C++. It lets you develop C++ and C applications that connect to MySQL Server.
C++
634
star
8

mysql-proxy

MySQL Proxy is a simple program that sits between your client and MySQL server(s) and that can monitor, analyze or transform their communication. Its flexibility allows for a wide variety of uses, including load balancing, failover, query analysis, query filtering and modification, and many more.
C
420
star
9

mysql-connector-net

Connector/NET is a fully-managed ADO.NET driver for MySQL.
C#
291
star
10

mysql-utilities

MySQL Utilities is a set of easy-to-use scripts intended to make working with MySQL servers easier.
Python
267
star
11

mysql-shell

MySQL Shell is a new command line scriptable shell for MySQL. It supports JavaScript and Python.
C++
193
star
12

mysql-connector-nodejs

MySQL Connector Node.JS is a MySQL Connector using the X Protocol, which was introduced with MySQL 5.7.12.
JavaScript
154
star
13

mysql-router

MySQL Router is lightweight middleware that provides transparent routing between your application and any backend MySQL Servers.
C++
150
star
14

mysql-connector-odbc

This is the source for MySQL Connector/ODBC (myodbc), an ODBC (3.51) driver for connecting an ODBC-aware application to the MySQL Server.
C++
92
star
15

mysql-shell-plugins

Plugins for the MySQL Shell
TypeScript
73
star
16

mysql-for-excel

MySQL for Excel is an Excel Add-In that is installed and accessed from within the MS Excel Data tab offering a wizard-like interface arranged in an elegant,yet simple way to help users browse MySQL Schemas, Tables, Views, and Procedures and perform data operations against them using MS Excel as the vehicle to drive the data in and out MySQL Databases.
C#
65
star
17

mysql-for-vs

MySQL for Visual Studio provides access to MySQL objects and data without forcing your developers to leave Visual Studio. Designed and developed as a Visual Studio package, MySQL for Visual Studio integrates directly into Server Explorer providing a seamless experience for setting up new connections and working with database objects.
C#
36
star
18

mysql-ndb-operator

Kubernetes Operator for MySQL NDB Cluster.
Go
35
star
19

mysql-notifier

MySQL Notifier is a small utility that can keep watch over your Windows and MySQL services, notifying you of changes in their operation. Notifier is intended to run when Windows starts up and sits in the tray notification area watching the MySQL and Windows services you have configured.
C#
19
star
20

mysql-snap

Source files for building Ubuntu Snap images
Shell
13
star
21

mysql-configurator

MySQL Configurator
C#
5
star