dbutil.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /**
  2. * Created by Administrator on 2016/1/6 0006.
  3. */
  4. const _ = require('underscore');
  5. exports.getInsertSeletiveSql = function (bean) {
  6. if (!_.isObject(bean) || _.isEmpty(bean) || _.isArray(bean) && _.isFunction(bean)) {
  7. throw new Error('转换为 insert sql 的json对象为空!');
  8. }
  9. let columnsSql = [];
  10. let valuesSql = [];
  11. let param = [];
  12. for (let key in bean) {
  13. let value = bean[key];
  14. columnsSql.push(key);
  15. valuesSql.push('?');
  16. param.push(value);
  17. }
  18. return {
  19. sql: '('+columnsSql.join(',') + ') values (' + valuesSql.join(',')+')',
  20. param: param
  21. }
  22. };
  23. exports.getUpdateSeletiveSql = function (bean) {
  24. if (!_.isObject(bean) || _.isEmpty(bean) || _.isArray(bean) && _.isFunction(bean)) {
  25. throw new Error('转换为 update sql 的json对象为空!');
  26. }
  27. let setSql = [];
  28. let param = [];
  29. for (let key in bean) {
  30. const value = bean[key];
  31. setSql.push(key + '=?');
  32. param.push(value);
  33. }
  34. return {
  35. sql: setSql.join(','),
  36. param: param
  37. }
  38. };