1.0.14 • Published 10 years ago
js-hibernate v1.0.14
JS-Hibernate
Current version: 1.0.14 NEW
Awesome new function - easy and usable Insert for entity. Details at the end of the documentation.
JSHibernate is a simple object-relational mapper for the JS.
There works only with MySQL. Plans to work with Oracle and MS SQL
Methods select() and where() return Promises/A+. Support operators:
- Equal: = sql operator
- More: > sql operator
- Less: < sql operator
- MoreEqual: >= sql operator
- LessEqual: <= sql operator
- Like: like sql operator
Support conditions:
- And: and sql condition
- Or: or sql condition
Other API methods:
- executeSql: execution of arbitrary sql query
Install
$ npm install js-hibernate
Usage
1. Config connection to database
var dbconfig = {
host: "your-mysql-host",
user: "your-mysql-user",
password: "your-mysql-password",
database: "your-mysql-db"
};
2. Init session
var jsORM = require('js-hibernate');
var session = jsORM.session(dbconfig);
3. Create Table Mapping
var userMap = session.tableMap('User')
// columnMap(object-name-property, table-name-property, optional-property-config)
.columnMap('id', 'id')
.columnMap('name', 'shortName')
.columnMap('phone', 'tel');
4. Simple request - select all rows
// select * from `User`
var query = session.query(userMap).select();
query.then(function(result){
console.log(result); // array with result
}).catch(function(error){
console.log('Error: ' + error);
});
5. Sample work with several operators and boolean operators
// select * from `User`
// where `shortName` = 'Rinat' and `id` > '0' and `id` <= 4
var query = session.query(userMap)
.where(
userMap.name.Equal('Rinat') // =
.And() // and
.id.More(0). // >
And() // and
.id.LessEqual(4) // <=
);
query.then(function(result) {
console.log(result); // array with result
}).catch(function(error) {
console.log('Error: ' + error);
});
6. Execute of arbitrary sql query
var sql = 'select * from `User`'
var query = session.executeSql(sql);
query.then(function(result) {
console.log(result); // array with result
}).catch(function(error) {
console.log('Error: ' + error);
});
7. Insert Entity
userMap = session.tableMap('User')
.columnMap('id', 'id', { isAutoIncrement: true })
.columnMap('name', 'shortName')
.columnMap('phone', 'tel');
var someUser = {
'name': 'newUser',
'phone': '555-555'
};
// insert into `User` (`shortName`, `tel`) values ('newUser', '555-555')
userMap.Insert(someUser).then(function (result) {
console.log('inserted: ' + result.affectedRows);
}).catch(function (error) {
console.log('Error: ' + error);
});
1.0.14
10 years ago
1.0.12
10 years ago
1.0.11
10 years ago
1.0.10
10 years ago
1.0.9
10 years ago
1.0.8
10 years ago
1.0.7
10 years ago
1.0.6
10 years ago
1.0.5
10 years ago
1.0.4
10 years ago
1.0.3
10 years ago
1.0.2
10 years ago
1.0.1
10 years ago
1.0.0
10 years ago
0.7.0
10 years ago
0.6.0
10 years ago
0.5.0
10 years ago
0.4.0
10 years ago
0.3.0
10 years ago
0.2.0
10 years ago