builder_insert.lua 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. -- mysql_builder_insert.lua
  2. local mysql_builder_insert = {}
  3. mysql_builder_insert.__index = mysql_builder_insert
  4. --[[
  5. 创建一个新的 fw_mysql_builder_insert 对象
  6. @return 返回一个新的 fw_mysql_builder_insert 对象
  7. ]]
  8. function mysql_builder_insert.new(__module)
  9. local instance = setmetatable({}, mysql_builder_insert)
  10. instance.module = __module
  11. return instance
  12. end
  13. --[[
  14. 设置要插入的表名
  15. @param table_name 表名
  16. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  17. ]]
  18. function mysql_builder_insert:table(table_name)
  19. self.module:table(table_name)
  20. return self
  21. end
  22. --[[
  23. 设置 int32 类型的字段
  24. @param name 字段名称
  25. @param value 值
  26. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  27. ]]
  28. function mysql_builder_insert:set_i32(name, value)
  29. self.module:set_i32(name, value)
  30. return self
  31. end
  32. --[[
  33. 设置 int64 类型的字段
  34. @param name 字段名称
  35. @param value 值
  36. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  37. ]]
  38. function mysql_builder_insert:set_i64(name, value)
  39. self.module:set_i64(name, value)
  40. return self
  41. end
  42. --[[
  43. 设置 double 类型的字段
  44. @param name 字段名称
  45. @param value 值
  46. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  47. ]]
  48. function mysql_builder_insert:set_dob(name, value)
  49. self.module:set_dob(name, value)
  50. return self
  51. end
  52. --[[
  53. 设置字符串类型的字段
  54. @param name 字段名称
  55. @param value 值
  56. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  57. ]]
  58. function mysql_builder_insert:set_str(name, value)
  59. self.module:set_str(name, value)
  60. return self
  61. end
  62. --[[
  63. 设置 blob 类型的字段
  64. @param name 字段名称
  65. @param value 值
  66. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  67. ]]
  68. function mysql_builder_insert:set_blob(name, value)
  69. self.module:set_blob(name, value)
  70. return self
  71. end
  72. --[[
  73. 设置不作为预处理语句的字段
  74. @param name 字段名称
  75. @param value 值
  76. @return 返回 mysql_builder_insert 对象自身,以便链式调用
  77. ]]
  78. function mysql_builder_insert:set_not_ppst(name, value)
  79. self.module:set_not_ppst(name, value)
  80. return self
  81. end
  82. --[[
  83. 执行插入操作
  84. @return 返回受影响的行数
  85. ]]
  86. function mysql_builder_insert:exec()
  87. return self.module:exec()
  88. end
  89. --[[
  90. 清空插入语句
  91. ]]
  92. function mysql_builder_insert:clear()
  93. self.module:clear()
  94. end
  95. return mysql_builder_insert