af-db-ts 2.0.18 → 2.0.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/dist/cjs/__tests__/db/ms/@gen-types/test-table_schema.js +3 -0
  2. package/dist/cjs/__tests__/db/ms/@gen-types/test-table_schema.js.map +1 -0
  3. package/dist/cjs/__tests__/db/ms/ddl/column-schema-for-test-table-schema-ms.json +216 -0
  4. package/dist/cjs/__tests__/db/ms/ms-get-sql.spec.js +190 -0
  5. package/dist/cjs/__tests__/db/ms/ms-get-sql.spec.js.map +1 -0
  6. package/dist/cjs/__tests__/db/ms/ms-prepare-sql-value.spec.js +584 -0
  7. package/dist/cjs/__tests__/db/ms/ms-prepare-sql-value.spec.js.map +1 -0
  8. package/dist/cjs/__tests__/db/ms/ms-table-schema.spec.js +107 -0
  9. package/dist/cjs/__tests__/db/ms/ms-table-schema.spec.js.map +1 -0
  10. package/dist/cjs/__tests__/db/pg/@gen-types/test-hard_case.js +3 -0
  11. package/dist/cjs/__tests__/db/pg/@gen-types/test-hard_case.js.map +1 -0
  12. package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_serial.js +3 -0
  13. package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_serial.js.map +1 -0
  14. package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_uniq.js +3 -0
  15. package/dist/cjs/__tests__/db/pg/@gen-types/test-only_one_uniq.js.map +1 -0
  16. package/dist/cjs/__tests__/db/pg/@gen-types/test-serial_and_uniq.js +3 -0
  17. package/dist/cjs/__tests__/db/pg/@gen-types/test-serial_and_uniq.js.map +1 -0
  18. package/dist/cjs/__tests__/db/pg/@gen-types/test-table_schema.js +3 -0
  19. package/dist/cjs/__tests__/db/pg/@gen-types/test-table_schema.js.map +1 -0
  20. package/dist/cjs/__tests__/db/pg/ddl/column-schema-for-test-table-schema-pg.json +170 -0
  21. package/dist/cjs/__tests__/db/pg/gen-table-interfaces-4-test-pg.js +36 -0
  22. package/dist/cjs/__tests__/db/pg/gen-table-interfaces-4-test-pg.js.map +1 -0
  23. package/dist/cjs/__tests__/db/pg/pg-get-sql.spec.js +261 -0
  24. package/dist/cjs/__tests__/db/pg/pg-get-sql.spec.js.map +1 -0
  25. package/dist/cjs/__tests__/db/pg/pg-insert.spec.js +294 -0
  26. package/dist/cjs/__tests__/db/pg/pg-insert.spec.js.map +1 -0
  27. package/dist/cjs/__tests__/db/pg/pg-prepare-sql-value.spec.js +575 -0
  28. package/dist/cjs/__tests__/db/pg/pg-prepare-sql-value.spec.js.map +1 -0
  29. package/dist/cjs/__tests__/db/pg/pg-table-schema.spec.js +117 -0
  30. package/dist/cjs/__tests__/db/pg/pg-table-schema.spec.js.map +1 -0
  31. package/dist/cjs/src/@types/i-data-types-ms.js +3 -0
  32. package/dist/cjs/src/@types/i-data-types-ms.js.map +1 -0
  33. package/dist/cjs/src/@types/i-data-types-pg.js +7 -0
  34. package/dist/cjs/src/@types/i-data-types-pg.js.map +1 -0
  35. package/dist/cjs/src/@types/i-pg.js +0 -21
  36. package/dist/cjs/src/@types/i-pg.js.map +1 -1
  37. package/dist/cjs/src/common.js +6 -5
  38. package/dist/cjs/src/common.js.map +1 -1
  39. package/dist/cjs/src/index.js +75 -54
  40. package/dist/cjs/src/index.js.map +1 -1
  41. package/dist/cjs/src/ms/gen-table-interfaces-ms.js +64 -0
  42. package/dist/cjs/src/ms/gen-table-interfaces-ms.js.map +1 -0
  43. package/dist/cjs/src/ms/get-sql/insert.js +37 -0
  44. package/dist/cjs/src/ms/get-sql/insert.js.map +1 -0
  45. package/dist/cjs/src/ms/get-sql/merge.js +93 -0
  46. package/dist/cjs/src/ms/get-sql/merge.js.map +1 -0
  47. package/dist/cjs/src/ms/get-sql/update.js +32 -0
  48. package/dist/cjs/src/ms/get-sql/update.js.map +1 -0
  49. package/dist/cjs/src/{mssql → ms}/pool-ms.js +6 -23
  50. package/dist/cjs/src/ms/pool-ms.js.map +1 -0
  51. package/dist/cjs/src/ms/prepare-value.js +178 -0
  52. package/dist/cjs/src/ms/prepare-value.js.map +1 -0
  53. package/dist/cjs/src/{mssql → ms}/query-ms.js +1 -1
  54. package/dist/cjs/src/ms/query-ms.js.map +1 -0
  55. package/dist/cjs/src/ms/table-schema-ms.js +241 -0
  56. package/dist/cjs/src/ms/table-schema-ms.js.map +1 -0
  57. package/dist/cjs/src/ms/utils-ms.js +92 -0
  58. package/dist/cjs/src/ms/utils-ms.js.map +1 -0
  59. package/dist/cjs/src/ms/wrap-transaction-ms.js +32 -0
  60. package/dist/cjs/src/ms/wrap-transaction-ms.js.map +1 -0
  61. package/dist/cjs/src/pg/gen-table-interfaces-pg.js +83 -0
  62. package/dist/cjs/src/pg/gen-table-interfaces-pg.js.map +1 -0
  63. package/dist/cjs/src/pg/get-sql/insert.js +38 -0
  64. package/dist/cjs/src/pg/get-sql/insert.js.map +1 -0
  65. package/dist/cjs/src/pg/get-sql/merge.js +60 -0
  66. package/dist/cjs/src/pg/get-sql/merge.js.map +1 -0
  67. package/dist/cjs/src/pg/get-sql/update.js +32 -0
  68. package/dist/cjs/src/pg/get-sql/update.js.map +1 -0
  69. package/dist/cjs/src/pg/{insert.js → insert-pg.js} +10 -10
  70. package/dist/cjs/src/pg/insert-pg.js.map +1 -0
  71. package/dist/cjs/src/pg/is-table-or-view-exists.js +1 -2
  72. package/dist/cjs/src/pg/is-table-or-view-exists.js.map +1 -1
  73. package/dist/cjs/src/pg/{pg-pool.js → pool-pg.js} +6 -7
  74. package/dist/cjs/src/pg/pool-pg.js.map +1 -0
  75. package/dist/cjs/src/pg/prepare-value.js +116 -69
  76. package/dist/cjs/src/pg/prepare-value.js.map +1 -1
  77. package/dist/cjs/src/pg/query-pg.js +2 -2
  78. package/dist/cjs/src/pg/query-pg.js.map +1 -1
  79. package/dist/cjs/src/pg/table-schema-pg.js +183 -0
  80. package/dist/cjs/src/pg/table-schema-pg.js.map +1 -0
  81. package/dist/cjs/src/pg/utils-pg.js +99 -0
  82. package/dist/cjs/src/pg/utils-pg.js.map +1 -0
  83. package/dist/cjs/src/utils/utils-array.js +152 -0
  84. package/dist/cjs/src/utils/utils-array.js.map +1 -0
  85. package/dist/cjs/src/utils/utils-dt.js +121 -0
  86. package/dist/cjs/src/utils/utils-dt.js.map +1 -0
  87. package/dist/cjs/src/utils/utils-num.js +127 -0
  88. package/dist/cjs/src/utils/utils-num.js.map +1 -0
  89. package/dist/cjs/src/utils/utils.js +66 -0
  90. package/dist/cjs/src/utils/utils.js.map +1 -0
  91. package/dist/esm/src/@types/i-data-types-ms.js +2 -0
  92. package/dist/esm/src/@types/i-data-types-ms.js.map +1 -0
  93. package/dist/esm/src/@types/i-data-types-pg.js +6 -0
  94. package/dist/esm/src/@types/i-data-types-pg.js.map +1 -0
  95. package/dist/esm/src/@types/i-pg.js +1 -20
  96. package/dist/esm/src/@types/i-pg.js.map +1 -1
  97. package/dist/esm/src/common.js +3 -2
  98. package/dist/esm/src/common.js.map +1 -1
  99. package/dist/esm/src/index.js +24 -15
  100. package/dist/esm/src/index.js.map +1 -1
  101. package/dist/esm/src/ms/gen-table-interfaces-ms.js +36 -0
  102. package/dist/esm/src/ms/gen-table-interfaces-ms.js.map +1 -0
  103. package/dist/esm/src/ms/get-sql/insert.js +33 -0
  104. package/dist/esm/src/ms/get-sql/insert.js.map +1 -0
  105. package/dist/esm/src/ms/get-sql/merge.js +89 -0
  106. package/dist/esm/src/ms/get-sql/merge.js.map +1 -0
  107. package/dist/esm/src/ms/get-sql/update.js +28 -0
  108. package/dist/esm/src/ms/get-sql/update.js.map +1 -0
  109. package/dist/esm/src/{mssql → ms}/pool-ms.js +5 -20
  110. package/dist/esm/src/ms/pool-ms.js.map +1 -0
  111. package/dist/esm/src/ms/prepare-value.js +149 -0
  112. package/dist/esm/src/ms/prepare-value.js.map +1 -0
  113. package/dist/esm/src/{mssql → ms}/query-ms.js +1 -1
  114. package/dist/esm/src/ms/query-ms.js.map +1 -0
  115. package/dist/esm/src/ms/table-schema-ms.js +213 -0
  116. package/dist/esm/src/ms/table-schema-ms.js.map +1 -0
  117. package/dist/esm/src/ms/utils-ms.js +65 -0
  118. package/dist/esm/src/ms/utils-ms.js.map +1 -0
  119. package/dist/esm/src/ms/wrap-transaction-ms.js +28 -0
  120. package/dist/esm/src/ms/wrap-transaction-ms.js.map +1 -0
  121. package/dist/esm/src/pg/gen-table-interfaces-pg.js +55 -0
  122. package/dist/esm/src/pg/gen-table-interfaces-pg.js.map +1 -0
  123. package/dist/esm/src/pg/get-sql/insert.js +34 -0
  124. package/dist/esm/src/pg/get-sql/insert.js.map +1 -0
  125. package/dist/esm/src/pg/get-sql/merge.js +56 -0
  126. package/dist/esm/src/pg/get-sql/merge.js.map +1 -0
  127. package/dist/esm/src/pg/get-sql/update.js +28 -0
  128. package/dist/esm/src/pg/get-sql/update.js.map +1 -0
  129. package/dist/esm/src/pg/{insert.js → insert-pg.js} +10 -10
  130. package/dist/esm/src/pg/insert-pg.js.map +1 -0
  131. package/dist/esm/src/pg/is-table-or-view-exists.js +1 -2
  132. package/dist/esm/src/pg/is-table-or-view-exists.js.map +1 -1
  133. package/dist/esm/src/pg/{pg-pool.js → pool-pg.js} +6 -7
  134. package/dist/esm/src/pg/pool-pg.js.map +1 -0
  135. package/dist/esm/src/pg/prepare-value.js +113 -67
  136. package/dist/esm/src/pg/prepare-value.js.map +1 -1
  137. package/dist/esm/src/pg/query-pg.js +1 -1
  138. package/dist/esm/src/pg/query-pg.js.map +1 -1
  139. package/dist/esm/src/pg/table-schema-pg.js +178 -0
  140. package/dist/esm/src/pg/table-schema-pg.js.map +1 -0
  141. package/dist/esm/src/pg/utils-pg.js +93 -0
  142. package/dist/esm/src/pg/utils-pg.js.map +1 -0
  143. package/dist/esm/src/utils/utils-array.js +125 -0
  144. package/dist/esm/src/utils/utils-array.js.map +1 -0
  145. package/dist/esm/src/utils/utils-dt.js +114 -0
  146. package/dist/esm/src/utils/utils-dt.js.map +1 -0
  147. package/dist/esm/src/utils/utils-num.js +117 -0
  148. package/dist/esm/src/utils/utils-num.js.map +1 -0
  149. package/dist/esm/src/utils/utils.js +58 -0
  150. package/dist/esm/src/utils/utils.js.map +1 -0
  151. package/dist/types/src/@types/i-common.d.ts +35 -3
  152. package/dist/types/src/@types/i-common.d.ts.map +1 -1
  153. package/dist/types/src/@types/i-data-types-ms.d.ts +3 -0
  154. package/dist/types/src/@types/i-data-types-ms.d.ts.map +1 -0
  155. package/dist/types/src/@types/i-data-types-pg.d.ts +35 -0
  156. package/dist/types/src/@types/i-data-types-pg.d.ts.map +1 -0
  157. package/dist/types/src/@types/i-ms.d.ts +26 -126
  158. package/dist/types/src/@types/i-ms.d.ts.map +1 -1
  159. package/dist/types/src/@types/i-pg.d.ts +11 -35
  160. package/dist/types/src/@types/i-pg.d.ts.map +1 -1
  161. package/dist/types/src/common.d.ts +1 -0
  162. package/dist/types/src/common.d.ts.map +1 -1
  163. package/dist/types/src/index.d.ts +28 -16
  164. package/dist/types/src/index.d.ts.map +1 -1
  165. package/dist/types/src/ms/gen-table-interfaces-ms.d.ts +3 -0
  166. package/dist/types/src/ms/gen-table-interfaces-ms.d.ts.map +1 -0
  167. package/dist/types/src/ms/get-sql/insert.d.ts +9 -0
  168. package/dist/types/src/ms/get-sql/insert.d.ts.map +1 -0
  169. package/dist/types/src/ms/get-sql/merge.d.ts +14 -0
  170. package/dist/types/src/ms/get-sql/merge.d.ts.map +1 -0
  171. package/dist/types/src/ms/get-sql/update.d.ts +9 -0
  172. package/dist/types/src/ms/get-sql/update.d.ts.map +1 -0
  173. package/dist/types/src/{mssql → ms}/pool-ms.d.ts +0 -8
  174. package/dist/types/src/ms/pool-ms.d.ts.map +1 -0
  175. package/dist/types/src/ms/prepare-value.d.ts +12 -0
  176. package/dist/types/src/ms/prepare-value.d.ts.map +1 -0
  177. package/dist/types/src/ms/query-ms.d.ts +3 -0
  178. package/dist/types/src/ms/query-ms.d.ts.map +1 -0
  179. package/dist/types/src/ms/table-schema-ms.d.ts +9 -0
  180. package/dist/types/src/ms/table-schema-ms.d.ts.map +1 -0
  181. package/dist/types/src/ms/utils-ms.d.ts +3 -0
  182. package/dist/types/src/ms/utils-ms.d.ts.map +1 -0
  183. package/dist/types/src/ms/wrap-transaction-ms.d.ts +5 -0
  184. package/dist/types/src/ms/wrap-transaction-ms.d.ts.map +1 -0
  185. package/dist/types/src/pg/gen-table-interfaces-pg.d.ts +3 -0
  186. package/dist/types/src/pg/gen-table-interfaces-pg.d.ts.map +1 -0
  187. package/dist/types/src/pg/get-sql/insert.d.ts +9 -0
  188. package/dist/types/src/pg/get-sql/insert.d.ts.map +1 -0
  189. package/dist/types/src/pg/get-sql/merge.d.ts +10 -0
  190. package/dist/types/src/pg/get-sql/merge.d.ts.map +1 -0
  191. package/dist/types/src/pg/get-sql/update.d.ts +9 -0
  192. package/dist/types/src/pg/get-sql/update.d.ts.map +1 -0
  193. package/dist/types/src/pg/{insert.d.ts → insert-pg.d.ts} +3 -3
  194. package/dist/types/src/pg/insert-pg.d.ts.map +1 -0
  195. package/dist/types/src/pg/{pg-pool.d.ts → pool-pg.d.ts} +1 -1
  196. package/dist/types/src/pg/{pg-pool.d.ts.map → pool-pg.d.ts.map} +1 -1
  197. package/dist/types/src/pg/prepare-value.d.ts +3 -1
  198. package/dist/types/src/pg/prepare-value.d.ts.map +1 -1
  199. package/dist/types/src/pg/query-pg.d.ts +3 -2
  200. package/dist/types/src/pg/query-pg.d.ts.map +1 -1
  201. package/dist/types/src/pg/table-schema-pg.d.ts +12 -0
  202. package/dist/types/src/pg/table-schema-pg.d.ts.map +1 -0
  203. package/dist/types/src/pg/utils-pg.d.ts +5 -0
  204. package/dist/types/src/pg/utils-pg.d.ts.map +1 -0
  205. package/dist/types/src/utils/utils-array.d.ts +5 -0
  206. package/dist/types/src/utils/utils-array.d.ts.map +1 -0
  207. package/dist/types/src/utils/utils-dt.d.ts +15 -0
  208. package/dist/types/src/utils/utils-dt.d.ts.map +1 -0
  209. package/dist/types/src/utils/utils-num.d.ts +9 -0
  210. package/dist/types/src/utils/utils-num.d.ts.map +1 -0
  211. package/dist/types/src/utils/utils.d.ts +18 -0
  212. package/dist/types/src/utils/utils.d.ts.map +1 -0
  213. package/package.json +13 -13
  214. package/src/@types/i-common.ts +42 -4
  215. package/src/@types/i-data-types-ms.ts +81 -0
  216. package/src/@types/i-data-types-pg.ts +120 -0
  217. package/src/@types/i-ms.ts +29 -153
  218. package/src/@types/i-pg.ts +11 -36
  219. package/src/common.ts +4 -2
  220. package/src/index.ts +101 -59
  221. package/src/ms/gen-table-interfaces-ms.ts +52 -0
  222. package/src/ms/get-sql/insert.ts +45 -0
  223. package/src/ms/get-sql/merge.ts +118 -0
  224. package/src/ms/get-sql/update.ts +46 -0
  225. package/src/{mssql → ms}/pool-ms.ts +0 -16
  226. package/src/ms/prepare-value.ts +175 -0
  227. package/src/{mssql → ms}/query-ms.ts +2 -2
  228. package/src/ms/table-schema-ms.ts +231 -0
  229. package/src/ms/utils-ms.ts +72 -0
  230. package/src/ms/wrap-transaction-ms.ts +27 -0
  231. package/src/pg/gen-table-interfaces-pg.ts +74 -0
  232. package/src/pg/get-sql/insert.ts +46 -0
  233. package/src/pg/get-sql/merge.ts +70 -0
  234. package/src/pg/get-sql/update.ts +46 -0
  235. package/src/pg/{insert.ts → insert-pg.ts} +9 -9
  236. package/src/pg/prepare-value.ts +129 -67
  237. package/src/pg/query-pg.ts +4 -3
  238. package/src/pg/table-schema-pg.ts +196 -0
  239. package/src/pg/utils-pg.ts +97 -0
  240. package/src/utils/utils-array.ts +133 -0
  241. package/src/utils/utils-dt.ts +123 -0
  242. package/src/utils/utils-num.ts +131 -0
  243. package/src/utils/utils.ts +64 -0
  244. package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js +0 -50
  245. package/dist/cjs/__tests__/02_getValueForSqlMs.spec.js.map +0 -1
  246. package/dist/cjs/src/mssql/get-value-for-sql.js +0 -277
  247. package/dist/cjs/src/mssql/get-value-for-sql.js.map +0 -1
  248. package/dist/cjs/src/mssql/pool-ms.js.map +0 -1
  249. package/dist/cjs/src/mssql/query-ms.js.map +0 -1
  250. package/dist/cjs/src/mssql/sql.js +0 -427
  251. package/dist/cjs/src/mssql/sql.js.map +0 -1
  252. package/dist/cjs/src/mssql/utils.js +0 -36
  253. package/dist/cjs/src/mssql/utils.js.map +0 -1
  254. package/dist/cjs/src/pg/get-merge-sql.js +0 -52
  255. package/dist/cjs/src/pg/get-merge-sql.js.map +0 -1
  256. package/dist/cjs/src/pg/get-update-sql.js +0 -30
  257. package/dist/cjs/src/pg/get-update-sql.js.map +0 -1
  258. package/dist/cjs/src/pg/insert.js.map +0 -1
  259. package/dist/cjs/src/pg/pg-pool.js.map +0 -1
  260. package/dist/cjs/src/pg/table-schema.js +0 -179
  261. package/dist/cjs/src/pg/table-schema.js.map +0 -1
  262. package/dist/cjs/src/utils.js +0 -17
  263. package/dist/cjs/src/utils.js.map +0 -1
  264. package/dist/esm/src/mssql/get-value-for-sql.js +0 -272
  265. package/dist/esm/src/mssql/get-value-for-sql.js.map +0 -1
  266. package/dist/esm/src/mssql/pool-ms.js.map +0 -1
  267. package/dist/esm/src/mssql/query-ms.js.map +0 -1
  268. package/dist/esm/src/mssql/sql.js +0 -390
  269. package/dist/esm/src/mssql/sql.js.map +0 -1
  270. package/dist/esm/src/mssql/utils.js +0 -31
  271. package/dist/esm/src/mssql/utils.js.map +0 -1
  272. package/dist/esm/src/pg/get-merge-sql.js +0 -48
  273. package/dist/esm/src/pg/get-merge-sql.js.map +0 -1
  274. package/dist/esm/src/pg/get-update-sql.js +0 -26
  275. package/dist/esm/src/pg/get-update-sql.js.map +0 -1
  276. package/dist/esm/src/pg/insert.js.map +0 -1
  277. package/dist/esm/src/pg/pg-pool.js.map +0 -1
  278. package/dist/esm/src/pg/table-schema.js +0 -174
  279. package/dist/esm/src/pg/table-schema.js.map +0 -1
  280. package/dist/esm/src/utils.js +0 -14
  281. package/dist/esm/src/utils.js.map +0 -1
  282. package/dist/types/src/mssql/get-value-for-sql.d.ts +0 -11
  283. package/dist/types/src/mssql/get-value-for-sql.d.ts.map +0 -1
  284. package/dist/types/src/mssql/pool-ms.d.ts.map +0 -1
  285. package/dist/types/src/mssql/query-ms.d.ts +0 -3
  286. package/dist/types/src/mssql/query-ms.d.ts.map +0 -1
  287. package/dist/types/src/mssql/sql.d.ts +0 -57
  288. package/dist/types/src/mssql/sql.d.ts.map +0 -1
  289. package/dist/types/src/mssql/utils.d.ts +0 -10
  290. package/dist/types/src/mssql/utils.d.ts.map +0 -1
  291. package/dist/types/src/pg/get-merge-sql.d.ts +0 -9
  292. package/dist/types/src/pg/get-merge-sql.d.ts.map +0 -1
  293. package/dist/types/src/pg/get-update-sql.d.ts +0 -3
  294. package/dist/types/src/pg/get-update-sql.d.ts.map +0 -1
  295. package/dist/types/src/pg/insert.d.ts.map +0 -1
  296. package/dist/types/src/pg/table-schema.d.ts +0 -12
  297. package/dist/types/src/pg/table-schema.d.ts.map +0 -1
  298. package/dist/types/src/utils.d.ts +0 -9
  299. package/dist/types/src/utils.d.ts.map +0 -1
  300. package/src/mssql/get-value-for-sql.ts +0 -325
  301. package/src/mssql/sql.ts +0 -430
  302. package/src/mssql/utils.ts +0 -31
  303. package/src/pg/get-merge-sql.ts +0 -62
  304. package/src/pg/get-update-sql.ts +0 -32
  305. package/src/pg/table-schema.ts +0 -189
  306. package/src/utils.ts +0 -14
  307. /package/src/pg/{pg-pool.ts → pool-pg.ts} +0 -0
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=test-table_schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-table_schema.js","sourceRoot":"","sources":["../../../../../../__tests__/db/ms/@gen-types/test-table_schema.ts"],"names":[],"mappings":""}
@@ -0,0 +1,216 @@
1
+ {
2
+ "ser1": {
3
+ "name": "ser1",
4
+ "isNullable": false,
5
+ "hasDefault": false,
6
+ "dataType": "int",
7
+ "length": null,
8
+ "octetLength": null,
9
+ "precision": 10,
10
+ "radix": 10,
11
+ "dtPrecision": null,
12
+ "charSetName": null,
13
+ "collation": null,
14
+ "caseSensitive": false,
15
+ "identity": true,
16
+ "readOnly": true
17
+ },
18
+ "i1": {
19
+ "name": "i1",
20
+ "isNullable": false,
21
+ "columnDefault": "123",
22
+ "hasDefault": true,
23
+ "dataType": "int",
24
+ "length": null,
25
+ "octetLength": null,
26
+ "precision": 10,
27
+ "radix": 10,
28
+ "dtPrecision": null,
29
+ "charSetName": null,
30
+ "collation": null,
31
+ "caseSensitive": false,
32
+ "identity": false,
33
+ "readOnly": false
34
+ },
35
+ "i2": {
36
+ "name": "i2",
37
+ "isNullable": true,
38
+ "hasDefault": false,
39
+ "dataType": "int",
40
+ "length": null,
41
+ "octetLength": null,
42
+ "precision": 10,
43
+ "radix": 10,
44
+ "dtPrecision": null,
45
+ "charSetName": null,
46
+ "collation": null,
47
+ "caseSensitive": false,
48
+ "identity": false,
49
+ "readOnly": false
50
+ },
51
+ "i3": {
52
+ "caseSensitive": false,
53
+ "charSetName": null,
54
+ "collation": null,
55
+ "dataType": "int",
56
+ "dtPrecision": null,
57
+ "hasDefault": false,
58
+ "identity": false,
59
+ "isNullable": true,
60
+ "length": null,
61
+ "name": "i3",
62
+ "octetLength": null,
63
+ "precision": 10,
64
+ "radix": 10,
65
+ "readOnly": false
66
+ },
67
+ "si1": {
68
+ "name": "si1",
69
+ "isNullable": false,
70
+ "hasDefault": false,
71
+ "dataType": "smallint",
72
+ "length": null,
73
+ "octetLength": null,
74
+ "precision": 5,
75
+ "radix": 10,
76
+ "dtPrecision": null,
77
+ "charSetName": null,
78
+ "collation": null,
79
+ "caseSensitive": false,
80
+ "identity": false,
81
+ "readOnly": false
82
+ },
83
+ "vc1": {
84
+ "name": "vc1",
85
+ "isNullable": false,
86
+ "columnDefault": "'aaa'",
87
+ "hasDefault": true,
88
+ "dataType": "varchar",
89
+ "length": 20,
90
+ "octetLength": 20,
91
+ "precision": null,
92
+ "radix": null,
93
+ "dtPrecision": null,
94
+ "charSetName": "cp1251",
95
+ "collation": "Cyrillic_General_BIN",
96
+ "caseSensitive": true,
97
+ "identity": false,
98
+ "readOnly": false
99
+ },
100
+ "dt1": {
101
+ "caseSensitive": false,
102
+ "charSetName": null,
103
+ "collation": null,
104
+ "columnDefault": "getdate()",
105
+ "dataType": "datetime",
106
+ "dtPrecision": 3,
107
+ "hasDefault": true,
108
+ "identity": false,
109
+ "isNullable": false,
110
+ "length": null,
111
+ "name": "dt1",
112
+ "octetLength": null,
113
+ "precision": null,
114
+ "radix": null,
115
+ "readOnly": false
116
+ },
117
+ "dt2": {
118
+ "caseSensitive": false,
119
+ "charSetName": null,
120
+ "collation": null,
121
+ "columnDefault": "getdate()",
122
+ "dataType": "datetime2",
123
+ "dtPrecision": 4,
124
+ "hasDefault": true,
125
+ "identity": false,
126
+ "isNullable": false,
127
+ "length": null,
128
+ "name": "dt2",
129
+ "octetLength": null,
130
+ "precision": null,
131
+ "radix": null,
132
+ "readOnly": false
133
+ },
134
+ "dtz": {
135
+ "caseSensitive": false,
136
+ "charSetName": null,
137
+ "collation": null,
138
+ "columnDefault": "getdate()",
139
+ "dataType": "datetimeoffset",
140
+ "dtPrecision": 4,
141
+ "hasDefault": true,
142
+ "identity": false,
143
+ "isNullable": false,
144
+ "length": null,
145
+ "name": "dtz",
146
+ "octetLength": null,
147
+ "precision": null,
148
+ "radix": null,
149
+ "readOnly": false
150
+ },
151
+ "time1": {
152
+ "name": "time1",
153
+ "isNullable": true,
154
+ "hasDefault": false,
155
+ "dataType": "time",
156
+ "length": null,
157
+ "octetLength": null,
158
+ "precision": null,
159
+ "radix": null,
160
+ "dtPrecision": 7,
161
+ "charSetName": null,
162
+ "collation": null,
163
+ "caseSensitive": false,
164
+ "identity": false,
165
+ "readOnly": false
166
+ },
167
+ "bool1": {
168
+ "name": "bool1",
169
+ "isNullable": false,
170
+ "columnDefault": "0",
171
+ "hasDefault": true,
172
+ "dataType": "bit",
173
+ "length": null,
174
+ "octetLength": null,
175
+ "precision": null,
176
+ "radix": null,
177
+ "dtPrecision": null,
178
+ "charSetName": null,
179
+ "collation": null,
180
+ "caseSensitive": false,
181
+ "identity": false,
182
+ "readOnly": false
183
+ },
184
+ "comp1": {
185
+ "name": "comp1",
186
+ "isNullable": false,
187
+ "hasDefault": false,
188
+ "dataType": "bit",
189
+ "length": null,
190
+ "octetLength": null,
191
+ "precision": null,
192
+ "radix": null,
193
+ "dtPrecision": null,
194
+ "charSetName": null,
195
+ "collation": null,
196
+ "caseSensitive": false,
197
+ "identity": false,
198
+ "readOnly": true
199
+ },
200
+ "pers1": {
201
+ "name": "pers1",
202
+ "isNullable": false,
203
+ "hasDefault": false,
204
+ "dataType": "bit",
205
+ "length": null,
206
+ "octetLength": null,
207
+ "precision": null,
208
+ "radix": null,
209
+ "dtPrecision": null,
210
+ "charSetName": null,
211
+ "collation": null,
212
+ "caseSensitive": false,
213
+ "identity": false,
214
+ "readOnly": true
215
+ }
216
+ }
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ // noinspection SqlDialectInspection
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || function (mod) {
20
+ if (mod && mod.__esModule) return mod;
21
+ var result = {};
22
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
+ __setModuleDefault(result, mod);
24
+ return result;
25
+ };
26
+ var __importDefault = (this && this.__importDefault) || function (mod) {
27
+ return (mod && mod.__esModule) ? mod : { "default": mod };
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ const path = __importStar(require("path"));
31
+ const fs_1 = __importDefault(require("fs"));
32
+ const src_1 = require("../../../src");
33
+ const connectionId = 'test';
34
+ const commonSchemaAndTable = 'test.table_schema';
35
+ beforeAll(async () => {
36
+ const sql = fs_1.default.readFileSync(path.normalize(path.join(process.cwd(), '__tests__/db/ms/ddl/test.test_table_schema.sql')), 'utf-8');
37
+ await (0, src_1.queryMs)(connectionId, sql);
38
+ });
39
+ const norm = (s) => s.replace(/\s+/sg, '');
40
+ const expectedInsertSql = norm(`
41
+ INSERT INTO [test].[table_schema] ([i1], [i3], [si1], [vc1], [dt1], [dt2], [dtz], [time1], [bool1]) OUTPUT inserted.*
42
+ VALUES
43
+ (111, NULL, 11, 'bbb', getdate(), getdate(), '2023-01-01T01:02:03.3450+03:00', '23:04:06.000', 1),
44
+ (222, NULL, 12, 'aaa', getdate(), getdate(), getdate(), '23:04:06.000', 0);
45
+ `);
46
+ const expectedUpdateSql = norm(`
47
+ UPDATE [test].[table_schema]
48
+ SET
49
+ [i2] = i2 + 134, [vc1] = 'bbb', [dtz] = '2023-01-01T01:02:03.3450+03:00', [time1] = '23:04:06.000', [bool1] = 1
50
+ WHERE [i1] = 111 AND [si1] = 11;
51
+ `);
52
+ const expectedMergeSql = norm(`MERGE [test].[table_schema] AS target
53
+ USING
54
+ (
55
+ SELECT * FROM (
56
+ VALUES
57
+ (111, null, 11, 'bbb', '2023-01-01T01:02:03.3450+03:00', '23:04:06.000', 1),
58
+ (222, null, 12, 'aaa', getdate(), '23:04:06.000', 0)
59
+ )
60
+ AS s (
61
+ [i1],
62
+ [i3],
63
+ [si1],
64
+ [vc1],
65
+ [dtz],
66
+ [time1],
67
+ [bool1]
68
+ )
69
+ )
70
+ AS source
71
+ ON target.[i1] = source.[i1] AND target.[si1] = source.[si1]
72
+
73
+ WHEN MATCHED THEN
74
+ UPDATE SET
75
+ target.[i3] = COALESCE(source.[i3], target.[i3]),
76
+ target.[vc1] = COALESCE(source.[vc1], target.[vc1]),
77
+ target.[dtz] = COALESCE(source.[dtz], target.[dtz]),
78
+ target.[time1] = COALESCE(source.[time1], target.[time1]),
79
+ target.[bool1] = COALESCE(source.[bool1], target.[bool1])
80
+
81
+ WHEN NOT MATCHED THEN
82
+ INSERT (
83
+ [i1],
84
+ [si1],
85
+ [vc1],
86
+ [dtz],
87
+ [time1],
88
+ [bool1]
89
+ )
90
+ VALUES (
91
+ source.[i1],
92
+ source.[si1],
93
+ source.[vc1],
94
+ source.[dtz],
95
+ source.[time1],
96
+ source.[bool1]
97
+ );
98
+
99
+ --corrected`);
100
+ describe('Sql Ms', () => {
101
+ test('getInsertSqlMs()', async () => {
102
+ const recordset = [
103
+ {
104
+ i1: 111,
105
+ i2: 122,
106
+ si1: 11,
107
+ vc1: 'bbb',
108
+ dtz: '2023-01-01T01:02:03.345',
109
+ time1: '23:04:06',
110
+ bool1: 1,
111
+ },
112
+ {
113
+ i1: 222,
114
+ i2: 222,
115
+ si1: 12,
116
+ // vc1: 'bbb',
117
+ // dtz1: '2023-01-01T01:02:03.345',
118
+ time1: '23:04:06',
119
+ // bool1: 1,
120
+ },
121
+ ];
122
+ const arg = {
123
+ connectionId,
124
+ commonSchemaAndTable,
125
+ recordset,
126
+ excludeFromInsert: ['i2'],
127
+ addOutputInserted: true,
128
+ };
129
+ const insertSql = await (0, src_1.getInsertSqlMs)(arg);
130
+ expect(norm(insertSql)).toEqual(expectedInsertSql);
131
+ });
132
+ test('getUpdateSqlMs()', async () => {
133
+ const record = {
134
+ i1: 111,
135
+ i2: 122,
136
+ si1: 11,
137
+ vc1: 'bbb',
138
+ dtz: '2023-01-01T01:02:03.345',
139
+ time1: '23:04:06',
140
+ bool1: 1,
141
+ };
142
+ const customSets = { i2: `i2 + 134` };
143
+ const arg = {
144
+ connectionId,
145
+ commonSchemaAndTable,
146
+ record,
147
+ customSets,
148
+ // updateIdentity: [],
149
+ };
150
+ const updateSql = await (0, src_1.getUpdateSqlMs)(arg);
151
+ expect(norm(updateSql)).toEqual(expectedUpdateSql);
152
+ });
153
+ test('getMergeSqlMs()', async () => {
154
+ const recordset = [
155
+ {
156
+ i1: 111,
157
+ i2: 122,
158
+ si1: 11,
159
+ vc1: 'bbb',
160
+ dtz: '2023-01-01T01:02:03.345',
161
+ time1: '23:04:06',
162
+ bool1: 1,
163
+ },
164
+ {
165
+ i1: 222,
166
+ i2: 222,
167
+ si1: 12,
168
+ // vc1: 'bbb',
169
+ // dtz1: '2023-01-01T01:02:03.345',
170
+ time1: '23:04:06',
171
+ // bool1: 1,
172
+ },
173
+ ];
174
+ const arg = {
175
+ connectionId,
176
+ commonSchemaAndTable,
177
+ recordset,
178
+ omitFields: ['i2', 'dt1', 'dt2'],
179
+ excludeFromInsert: ['i3'],
180
+ noUpdateIfNull: true,
181
+ // withClause: 'WITH (NOLOCK)',
182
+ // mergeIdentity: string[],
183
+ noReturnMergeResult: true,
184
+ mergeCorrection: (sql) => `${sql}\n--corrected`,
185
+ };
186
+ const mergeSql = await (0, src_1.getMergeSqlMs)(arg);
187
+ expect(norm(mergeSql)).toEqual(expectedMergeSql);
188
+ });
189
+ });
190
+ //# sourceMappingURL=ms-get-sql.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ms-get-sql.spec.js","sourceRoot":"","sources":["../../../../../__tests__/db/ms/ms-get-sql.spec.ts"],"names":[],"mappings":"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"}