自动生成sql代码

function addMethod(object, name, fn) {
  var old = object[name];
  object[name] = function() {
    if(fn.length === Object.getOwnPropertyNames(arguments[0]).length) {
      return fn.apply(this, arguments);
    } else if(typeof old === "function") {
      return old.apply(this, arguments);
    }//Object.getOwnPropertyNames(arguments[0]).length
  }
}
var SQL={};
addMethod(SQL, "select", function(table,a) {
  var ret = [];//table,join,where
  for (var Key in table.where){
		console.log(Key+"="+this.values[2][Key]);
	}
  return ret;
});
addMethod(SQL, "select", function(table,a,b) {
  var ret = [];
	
	for(var tab in table.joinl)
	{
		ret.push(table.joinl[tab]);
	}
	var sql="SELECT "+ret.join(",")+" FROM "+table.table;
  return sql;
});
 
var people = {
	table:"表名",
	joinl:["字段1","字段2","字段3"],
	where: {
			"user_id[=]":"foo",
			"user_id[>]":1000,
			"user_id[<]":500,
			"user_id[!=]":"foo"
		}
};
console.log(SQL.select(people)); 

猜你喜欢

转载自my.oschina.net/KFS/blog/1815389