query-generator.js
1.08 KB
var Utils = require("../../utils")
, util = require("util")
module.exports = (function() {
var QueryGenerator = {
createTableQuery: function(tableName, attributes, options) {
options = options || {}
var query = "CREATE TABLE IF NOT EXISTS <%= table %>(<%= attributes%>)"
, primaryKeys = []
, attrStr = Utils._.map(attributes, function(dataType, attr) {
var dt = dataType
if (Utils._.includes(dt, 'PRIMARY KEY')) {
primaryKeys.push(attr)
return Utils.addTicks(attr) + " " + dt.replace(/PRIMARY KEY/, '')
} else {
return Utils.addTicks(attr) + " " + dt
}
}).join(", ")
, values = {
table: Utils.addTicks(tableName),
attributes: attrStr,
charset: (options.charset ? "DEFAULT CHARSET=" + options.charset : "")
}
var sql = Utils._.template(query)(values).trim() + ";"
console.log(sql)
return sql
}
}
return Utils._.extend(Utils._.clone(require("../query-generator")), QueryGenerator)
})()