@simplysm/orm-common 13.0.99 → 14.0.1

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 (238) hide show
  1. package/dist/create-db-context.d.ts +10 -10
  2. package/dist/create-db-context.js +312 -276
  3. package/dist/create-db-context.js.map +1 -6
  4. package/dist/ddl/column-ddl.d.ts +4 -4
  5. package/dist/ddl/column-ddl.js +41 -35
  6. package/dist/ddl/column-ddl.js.map +1 -6
  7. package/dist/ddl/initialize.d.ts +17 -17
  8. package/dist/ddl/initialize.js +200 -142
  9. package/dist/ddl/initialize.js.map +1 -6
  10. package/dist/ddl/relation-ddl.d.ts +6 -6
  11. package/dist/ddl/relation-ddl.js +55 -48
  12. package/dist/ddl/relation-ddl.js.map +1 -6
  13. package/dist/ddl/schema-ddl.d.ts +4 -4
  14. package/dist/ddl/schema-ddl.js +21 -15
  15. package/dist/ddl/schema-ddl.js.map +1 -6
  16. package/dist/ddl/table-ddl.d.ts +20 -20
  17. package/dist/ddl/table-ddl.js +139 -93
  18. package/dist/ddl/table-ddl.js.map +1 -6
  19. package/dist/define-db-context.js +10 -13
  20. package/dist/define-db-context.js.map +1 -6
  21. package/dist/errors/db-transaction-error.d.ts +15 -15
  22. package/dist/errors/db-transaction-error.d.ts.map +1 -1
  23. package/dist/errors/db-transaction-error.js +53 -19
  24. package/dist/errors/db-transaction-error.js.map +1 -6
  25. package/dist/exec/executable.d.ts +23 -23
  26. package/dist/exec/executable.js +94 -40
  27. package/dist/exec/executable.js.map +1 -6
  28. package/dist/exec/queryable.d.ts +97 -97
  29. package/dist/exec/queryable.js +1310 -1204
  30. package/dist/exec/queryable.js.map +1 -6
  31. package/dist/exec/search-parser.d.ts +31 -31
  32. package/dist/exec/search-parser.d.ts.map +1 -1
  33. package/dist/exec/search-parser.js +158 -59
  34. package/dist/exec/search-parser.js.map +1 -6
  35. package/dist/expr/expr-unit.d.ts +4 -4
  36. package/dist/expr/expr-unit.js +24 -18
  37. package/dist/expr/expr-unit.js.map +1 -6
  38. package/dist/expr/expr.d.ts +6 -6
  39. package/dist/expr/expr.js +1872 -1844
  40. package/dist/expr/expr.js.map +1 -6
  41. package/dist/index.js +23 -1
  42. package/dist/index.js.map +1 -6
  43. package/dist/models/system-migration.js +7 -7
  44. package/dist/models/system-migration.js.map +1 -6
  45. package/dist/query-builder/base/expr-renderer-base.d.ts +10 -10
  46. package/dist/query-builder/base/expr-renderer-base.js +27 -21
  47. package/dist/query-builder/base/expr-renderer-base.js.map +1 -6
  48. package/dist/query-builder/base/query-builder-base.d.ts +21 -21
  49. package/dist/query-builder/base/query-builder-base.d.ts.map +1 -1
  50. package/dist/query-builder/base/query-builder-base.js +90 -80
  51. package/dist/query-builder/base/query-builder-base.js.map +1 -6
  52. package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +4 -4
  53. package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
  54. package/dist/query-builder/mssql/mssql-expr-renderer.js +447 -420
  55. package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -6
  56. package/dist/query-builder/mssql/mssql-query-builder.js +483 -443
  57. package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -6
  58. package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +4 -4
  59. package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
  60. package/dist/query-builder/mysql/mysql-expr-renderer.js +451 -419
  61. package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -6
  62. package/dist/query-builder/mysql/mysql-query-builder.js +570 -479
  63. package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -6
  64. package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +4 -4
  65. package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
  66. package/dist/query-builder/postgresql/postgresql-expr-renderer.js +449 -422
  67. package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -6
  68. package/dist/query-builder/postgresql/postgresql-query-builder.js +511 -460
  69. package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -6
  70. package/dist/query-builder/query-builder.d.ts +1 -1
  71. package/dist/query-builder/query-builder.js +13 -13
  72. package/dist/query-builder/query-builder.js.map +1 -6
  73. package/dist/schema/factory/column-builder.d.ts +84 -84
  74. package/dist/schema/factory/column-builder.js +248 -185
  75. package/dist/schema/factory/column-builder.js.map +1 -6
  76. package/dist/schema/factory/index-builder.d.ts +38 -38
  77. package/dist/schema/factory/index-builder.js +144 -85
  78. package/dist/schema/factory/index-builder.js.map +1 -6
  79. package/dist/schema/factory/relation-builder.d.ts +91 -91
  80. package/dist/schema/factory/relation-builder.d.ts.map +1 -1
  81. package/dist/schema/factory/relation-builder.js +274 -136
  82. package/dist/schema/factory/relation-builder.js.map +1 -6
  83. package/dist/schema/procedure-builder.d.ts +51 -51
  84. package/dist/schema/procedure-builder.d.ts.map +1 -1
  85. package/dist/schema/procedure-builder.js +205 -131
  86. package/dist/schema/procedure-builder.js.map +1 -6
  87. package/dist/schema/table-builder.d.ts +55 -55
  88. package/dist/schema/table-builder.d.ts.map +1 -1
  89. package/dist/schema/table-builder.js +274 -205
  90. package/dist/schema/table-builder.js.map +1 -6
  91. package/dist/schema/view-builder.d.ts +44 -44
  92. package/dist/schema/view-builder.d.ts.map +1 -1
  93. package/dist/schema/view-builder.js +189 -116
  94. package/dist/schema/view-builder.js.map +1 -6
  95. package/dist/types/column.js +60 -30
  96. package/dist/types/column.js.map +1 -6
  97. package/dist/types/db-context-def.d.ts +9 -9
  98. package/dist/types/db-context-def.js +2 -1
  99. package/dist/types/db-context-def.js.map +1 -6
  100. package/dist/types/db.d.ts +47 -47
  101. package/dist/types/db.js +15 -5
  102. package/dist/types/db.js.map +1 -6
  103. package/dist/types/expr.d.ts +81 -81
  104. package/dist/types/expr.d.ts.map +1 -1
  105. package/dist/types/expr.js +3 -1
  106. package/dist/types/expr.js.map +1 -6
  107. package/dist/types/query-def.d.ts +46 -46
  108. package/dist/types/query-def.d.ts.map +1 -1
  109. package/dist/types/query-def.js +31 -24
  110. package/dist/types/query-def.js.map +1 -6
  111. package/dist/utils/result-parser.js +362 -221
  112. package/dist/utils/result-parser.js.map +1 -6
  113. package/package.json +5 -7
  114. package/src/create-db-context.ts +31 -31
  115. package/src/ddl/column-ddl.ts +4 -4
  116. package/src/ddl/initialize.ts +38 -38
  117. package/src/ddl/relation-ddl.ts +6 -6
  118. package/src/ddl/schema-ddl.ts +4 -4
  119. package/src/ddl/table-ddl.ts +24 -24
  120. package/src/errors/db-transaction-error.ts +13 -13
  121. package/src/exec/executable.ts +25 -25
  122. package/src/exec/queryable.ts +134 -134
  123. package/src/exec/search-parser.ts +50 -50
  124. package/src/expr/expr-unit.ts +4 -4
  125. package/src/expr/expr.ts +13 -13
  126. package/src/index.ts +8 -8
  127. package/src/models/system-migration.ts +1 -1
  128. package/src/query-builder/base/expr-renderer-base.ts +21 -21
  129. package/src/query-builder/base/query-builder-base.ts +33 -33
  130. package/src/query-builder/mssql/mssql-expr-renderer.ts +11 -11
  131. package/src/query-builder/mssql/mssql-query-builder.ts +11 -11
  132. package/src/query-builder/mysql/mysql-expr-renderer.ts +15 -15
  133. package/src/query-builder/mysql/mysql-query-builder.ts +3 -3
  134. package/src/query-builder/postgresql/postgresql-expr-renderer.ts +9 -9
  135. package/src/query-builder/postgresql/postgresql-query-builder.ts +7 -7
  136. package/src/query-builder/query-builder.ts +1 -1
  137. package/src/schema/factory/column-builder.ts +86 -86
  138. package/src/schema/factory/index-builder.ts +38 -38
  139. package/src/schema/factory/relation-builder.ts +93 -93
  140. package/src/schema/procedure-builder.ts +52 -52
  141. package/src/schema/table-builder.ts +56 -56
  142. package/src/schema/view-builder.ts +45 -45
  143. package/src/types/column.ts +1 -1
  144. package/src/types/db-context-def.ts +15 -15
  145. package/src/types/db.ts +50 -50
  146. package/src/types/expr.ts +103 -103
  147. package/src/types/query-def.ts +50 -50
  148. package/src/utils/result-parser.ts +39 -39
  149. package/README.md +0 -192
  150. package/docs/core.md +0 -234
  151. package/docs/expression.md +0 -234
  152. package/docs/query-builder.md +0 -93
  153. package/docs/queryable.md +0 -198
  154. package/docs/schema-builders.md +0 -463
  155. package/docs/types.md +0 -445
  156. package/docs/utilities.md +0 -27
  157. package/tests/db-context/create-db-context.spec.ts +0 -193
  158. package/tests/db-context/define-db-context.spec.ts +0 -17
  159. package/tests/ddl/basic.expected.ts +0 -341
  160. package/tests/ddl/basic.spec.ts +0 -557
  161. package/tests/ddl/column-builder.expected.ts +0 -310
  162. package/tests/ddl/column-builder.spec.ts +0 -525
  163. package/tests/ddl/index-builder.expected.ts +0 -38
  164. package/tests/ddl/index-builder.spec.ts +0 -148
  165. package/tests/ddl/procedure-builder.expected.ts +0 -52
  166. package/tests/ddl/procedure-builder.spec.ts +0 -128
  167. package/tests/ddl/relation-builder.expected.ts +0 -36
  168. package/tests/ddl/relation-builder.spec.ts +0 -171
  169. package/tests/ddl/table-builder.expected.ts +0 -113
  170. package/tests/ddl/table-builder.spec.ts +0 -399
  171. package/tests/ddl/view-builder.expected.ts +0 -38
  172. package/tests/ddl/view-builder.spec.ts +0 -116
  173. package/tests/dml/delete.expected.ts +0 -96
  174. package/tests/dml/delete.spec.ts +0 -127
  175. package/tests/dml/insert.expected.ts +0 -192
  176. package/tests/dml/insert.spec.ts +0 -210
  177. package/tests/dml/update.expected.ts +0 -176
  178. package/tests/dml/update.spec.ts +0 -222
  179. package/tests/dml/upsert.expected.ts +0 -215
  180. package/tests/dml/upsert.spec.ts +0 -190
  181. package/tests/errors/queryable-errors.spec.ts +0 -126
  182. package/tests/escape.spec.ts +0 -59
  183. package/tests/examples/pivot.expected.ts +0 -211
  184. package/tests/examples/pivot.spec.ts +0 -200
  185. package/tests/examples/sampling.expected.ts +0 -69
  186. package/tests/examples/sampling.spec.ts +0 -42
  187. package/tests/examples/unpivot.expected.ts +0 -120
  188. package/tests/examples/unpivot.spec.ts +0 -161
  189. package/tests/exec/search-parser.spec.ts +0 -267
  190. package/tests/executable/basic.expected.ts +0 -18
  191. package/tests/executable/basic.spec.ts +0 -54
  192. package/tests/expr/comparison.expected.ts +0 -282
  193. package/tests/expr/comparison.spec.ts +0 -334
  194. package/tests/expr/conditional.expected.ts +0 -134
  195. package/tests/expr/conditional.spec.ts +0 -249
  196. package/tests/expr/date.expected.ts +0 -332
  197. package/tests/expr/date.spec.ts +0 -459
  198. package/tests/expr/math.expected.ts +0 -62
  199. package/tests/expr/math.spec.ts +0 -59
  200. package/tests/expr/string.expected.ts +0 -218
  201. package/tests/expr/string.spec.ts +0 -300
  202. package/tests/expr/utility.expected.ts +0 -147
  203. package/tests/expr/utility.spec.ts +0 -155
  204. package/tests/select/basic.expected.ts +0 -322
  205. package/tests/select/basic.spec.ts +0 -433
  206. package/tests/select/filter.expected.ts +0 -357
  207. package/tests/select/filter.spec.ts +0 -954
  208. package/tests/select/group.expected.ts +0 -169
  209. package/tests/select/group.spec.ts +0 -159
  210. package/tests/select/join.expected.ts +0 -582
  211. package/tests/select/join.spec.ts +0 -692
  212. package/tests/select/order.expected.ts +0 -150
  213. package/tests/select/order.spec.ts +0 -140
  214. package/tests/select/recursive-cte.expected.ts +0 -244
  215. package/tests/select/recursive-cte.spec.ts +0 -514
  216. package/tests/select/result-meta.spec.ts +0 -270
  217. package/tests/select/subquery.expected.ts +0 -363
  218. package/tests/select/subquery.spec.ts +0 -441
  219. package/tests/select/view.expected.ts +0 -155
  220. package/tests/select/view.spec.ts +0 -235
  221. package/tests/select/window.expected.ts +0 -345
  222. package/tests/select/window.spec.ts +0 -433
  223. package/tests/setup/MockExecutor.ts +0 -18
  224. package/tests/setup/TestDbContext.ts +0 -59
  225. package/tests/setup/models/Company.ts +0 -13
  226. package/tests/setup/models/Employee.ts +0 -10
  227. package/tests/setup/models/MonthlySales.ts +0 -11
  228. package/tests/setup/models/Post.ts +0 -16
  229. package/tests/setup/models/Sales.ts +0 -10
  230. package/tests/setup/models/User.ts +0 -19
  231. package/tests/setup/procedure/GetAllUsers.ts +0 -9
  232. package/tests/setup/procedure/GetUserById.ts +0 -12
  233. package/tests/setup/test-utils.ts +0 -72
  234. package/tests/setup/views/ActiveUsers.ts +0 -8
  235. package/tests/setup/views/UserSummary.ts +0 -11
  236. package/tests/types/nullable-queryable-record.spec.ts +0 -97
  237. package/tests/utils/result-parser-perf.spec.ts +0 -143
  238. package/tests/utils/result-parser.spec.ts +0 -667
@@ -14,12 +14,12 @@ import type { DbContextBase } from "../types/db-context-def";
14
14
  import { obj } from "@simplysm/core-common";
15
15
 
16
16
  /**
17
- * Transform Builder to CREATE QueryDef
17
+ * Builder CREATE QueryDef로 변환
18
18
  *
19
- * @param db - DbContext instance
19
+ * @param db - DbContext 인스턴스
20
20
  * @param builder - Table/View/Procedure builder
21
21
  * @returns CREATE TABLE/VIEW/PROCEDURE QueryDef
22
- * @throws {Error} When unknown builder type
22
+ * @throws {Error} 없는 builder 타입일 때
23
23
  */
24
24
  export function getCreateObjectQueryDef(
25
25
  db: DbContextBase,
@@ -33,21 +33,21 @@ export function getCreateObjectQueryDef(
33
33
  return getCreateProcQueryDef(db, builder);
34
34
  }
35
35
 
36
- throw new Error(`Unknown builder type: ${typeof builder}`);
36
+ throw new Error(`알 수 없는 builder 타입: ${typeof builder}`);
37
37
  }
38
38
 
39
39
  /**
40
- * CREATE TABLE QueryDef Generate
40
+ * CREATE TABLE QueryDef 생성
41
41
  *
42
- * @param db - DbContext instance
42
+ * @param db - DbContext 인스턴스
43
43
  * @param table - Table builder
44
44
  * @returns CREATE TABLE QueryDef
45
- * @throws {Error} When table has no columns
45
+ * @throws {Error} 테이블에 column이 없을
46
46
  */
47
47
  export function getCreateTableQueryDef(db: DbContextBase, table: TableBuilder<any, any>): QueryDef {
48
48
  const columns = table.meta.columns as ColumnBuilderRecord | undefined;
49
49
  if (columns == null) {
50
- throw new Error(`Table '${table.meta.name}' has no columns.`);
50
+ throw new Error(`테이블 '${table.meta.name}' column이 없습니다.`);
51
51
  }
52
52
 
53
53
  return {
@@ -65,19 +65,19 @@ export function getCreateTableQueryDef(db: DbContextBase, table: TableBuilder<an
65
65
  }
66
66
 
67
67
  /**
68
- * CREATE VIEW QueryDef Generate
68
+ * CREATE VIEW QueryDef 생성
69
69
  *
70
- * @param db - DbContext instance
70
+ * @param db - DbContext 인스턴스
71
71
  * @param view - View builder
72
72
  * @returns CREATE VIEW QueryDef
73
- * @throws {Error} When view has no viewFn
73
+ * @throws {Error} View에 viewFn이 없을
74
74
  */
75
75
  export function getCreateViewQueryDef(
76
76
  db: DbContextBase,
77
77
  view: ViewBuilder<any, any, any>,
78
78
  ): QueryDef {
79
79
  if (view.meta.viewFn == null) {
80
- throw new Error(`View '${view.meta.name}' has no viewFn.`);
80
+ throw new Error(`View '${view.meta.name}' viewFn이 없습니다.`);
81
81
  }
82
82
 
83
83
  const qr = view.meta.viewFn(db);
@@ -95,19 +95,19 @@ export function getCreateViewQueryDef(
95
95
  }
96
96
 
97
97
  /**
98
- * CREATE PROCEDURE QueryDef Generate
98
+ * CREATE PROCEDURE QueryDef 생성
99
99
  *
100
- * @param db - DbContext instance
100
+ * @param db - DbContext 인스턴스
101
101
  * @param procedure - Procedure builder
102
102
  * @returns CREATE PROCEDURE QueryDef
103
- * @throws {Error} When procedure has no body
103
+ * @throws {Error} Procedure에 body가 없을
104
104
  */
105
105
  export function getCreateProcQueryDef(
106
106
  db: DbContextBase,
107
107
  procedure: ProcedureBuilder<any, any>,
108
108
  ): QueryDef {
109
109
  if (procedure.meta.query == null) {
110
- throw new Error(`Procedure '${procedure.meta.name}' has no body.`);
110
+ throw new Error(`Procedure '${procedure.meta.name}' body가 없습니다.`);
111
111
  }
112
112
 
113
113
  const params = procedure.meta.params as ColumnBuilderRecord | undefined;
@@ -140,14 +140,14 @@ export function getCreateProcQueryDef(
140
140
  }
141
141
 
142
142
  /**
143
- * DROP TABLE QueryDef Generate
143
+ * DROP TABLE QueryDef 생성
144
144
  */
145
145
  export function getDropTableQueryDef(table: QueryDefObjectName): DropTableQueryDef {
146
146
  return { type: "dropTable", table };
147
147
  }
148
148
 
149
149
  /**
150
- * RENAME TABLE QueryDef Generate
150
+ * RENAME TABLE QueryDef 생성
151
151
  */
152
152
  export function getRenameTableQueryDef(
153
153
  table: QueryDefObjectName,
@@ -157,25 +157,25 @@ export function getRenameTableQueryDef(
157
157
  }
158
158
 
159
159
  /**
160
- * DROP VIEW QueryDef Generate
160
+ * DROP VIEW QueryDef 생성
161
161
  */
162
162
  export function getDropViewQueryDef(view: QueryDefObjectName): DropViewQueryDef {
163
163
  return { type: "dropView", view };
164
164
  }
165
165
 
166
166
  /**
167
- * DROP PROCEDURE QueryDef Generate
167
+ * DROP PROCEDURE QueryDef 생성
168
168
  */
169
169
  export function getDropProcQueryDef(procedure: QueryDefObjectName): DropProcQueryDef {
170
170
  return { type: "dropProc", procedure };
171
171
  }
172
172
 
173
173
  /**
174
- * Transform TableBuilder/ViewBuilder to QueryDefObjectName
174
+ * TableBuilder/ViewBuilder QueryDefObjectName으로 변환
175
175
  *
176
- * @param db - DbContext instance
177
- * @param tableOrView - Table or View builder
178
- * @returns Object name information for use in QueryDef
176
+ * @param db - DbContext 인스턴스
177
+ * @param tableOrView - Table 또는 View builder
178
+ * @returns QueryDef에서 사용할 객체 이름 정보
179
179
  */
180
180
  export function getQueryDefObjectName(
181
181
  db: DbContextBase,
@@ -1,27 +1,27 @@
1
1
  /**
2
- * Transaction-related error codes
2
+ * 트랜잭션 관련 에러 코드
3
3
  *
4
- * Abstracts DBMS-specific native error codes for DBMS-independent error handling
4
+ * DBMS 네이티브 에러 코드를 추상화하여 DBMS 독립적인 에러 처리를 지원한다
5
5
  */
6
6
  export enum DbErrorCode {
7
- /** No active transaction (no transaction during ROLLBACK) */
7
+ /** 활성 트랜잭션 없음 (ROLLBACK 트랜잭션 없음) */
8
8
  NO_ACTIVE_TRANSACTION = "NO_ACTIVE_TRANSACTION",
9
9
 
10
- /** Transaction already started */
10
+ /** 트랜잭션 이미 시작됨 */
11
11
  TRANSACTION_ALREADY_STARTED = "TRANSACTION_ALREADY_STARTED",
12
12
 
13
- /** Deadlock occurred */
13
+ /** 데드락 발생 */
14
14
  DEADLOCK = "DEADLOCK",
15
15
 
16
- /** Lock timeout */
16
+ /** 잠금 타임아웃 */
17
17
  LOCK_TIMEOUT = "LOCK_TIMEOUT",
18
18
  }
19
19
 
20
20
  /**
21
- * Database transaction error
21
+ * 데이터베이스 트랜잭션 에러
22
22
  *
23
- * Wraps DBMS-specific native errors with standardized error codes for
24
- * DBMS-independent error handling
23
+ * DBMS 네이티브 에러를 표준화된 에러 코드로 래핑하여
24
+ * DBMS 독립적인 에러 처리를 지원한다
25
25
  *
26
26
  * @example
27
27
  * ```typescript
@@ -30,7 +30,7 @@ export enum DbErrorCode {
30
30
  * } catch (err) {
31
31
  * if (err instanceof DbTransactionError) {
32
32
  * if (err.code === DbErrorCode.NO_ACTIVE_TRANSACTION) {
33
- * // Ignore if already rolled back
33
+ * // 이미 롤백된 경우 무시
34
34
  * return;
35
35
  * }
36
36
  * }
@@ -42,11 +42,11 @@ export class DbTransactionError extends Error {
42
42
  override readonly name = "DbTransactionError";
43
43
 
44
44
  constructor(
45
- /** Standardized error code */
45
+ /** 표준화된 에러 코드 */
46
46
  public readonly code: DbErrorCode,
47
- /** Error message */
47
+ /** 에러 메시지 */
48
48
  message: string,
49
- /** Original DBMS error (for debugging) */
49
+ /** 원본 DBMS 에러 (디버깅용) */
50
50
  public readonly originalError?: unknown,
51
51
  ) {
52
52
  super(message);
@@ -5,22 +5,22 @@ import { ExprUnit } from "../expr/expr-unit";
5
5
  import { expr } from "../expr/expr";
6
6
 
7
7
  /**
8
- * Stored procedure execution wrapper class
8
+ * 저장 프로시저 실행 래퍼 클래스
9
9
  *
10
- * Class for executing procedures defined by ProcedureBuilder.
11
- * Created and used through the executable() factory function in DbContext.
10
+ * ProcedureBuilder로 정의된 프로시저를 실행하기 위한 클래스.
11
+ * DbContext에서 executable() 팩토리 함수를 통해 생성 및 사용된다.
12
12
  *
13
- * @template TParams - Procedure parameter type
14
- * @template TReturns - Procedure return type
13
+ * @template TParams - 프로시저 파라미터 타입
14
+ * @template TReturns - 프로시저 반환 타입
15
15
  *
16
16
  * @example
17
17
  * ```typescript
18
- * // Execute procedure
18
+ * // 프로시저 실행
19
19
  * const result = await db.getUserById().execute({ userId: 1n });
20
20
  * ```
21
21
  *
22
- * @see {@link executable} Factory function
23
- * @see {@link ProcedureBuilder} Procedure definition
22
+ * @see {@link executable} 팩토리 함수
23
+ * @see {@link ProcedureBuilder} 프로시저 정의
24
24
  */
25
25
  export class Executable<TParams extends ColumnBuilderRecord, TReturns extends ColumnBuilderRecord> {
26
26
  constructor(
@@ -29,12 +29,12 @@ export class Executable<TParams extends ColumnBuilderRecord, TReturns extends Co
29
29
  ) {}
30
30
 
31
31
  /**
32
- * Generate procedure execution QueryDef
32
+ * 프로시저 실행 QueryDef 생성
33
33
  */
34
34
  getExecProcQueryDef(params?: InferColumnExprs<TParams>) {
35
35
  const meta = this._builder.meta;
36
36
  if (params && !meta.params) {
37
- throw new Error(`Procedure '${meta.name}' has no parameters.`);
37
+ throw new Error(`Procedure '${meta.name}' 파라미터가 없습니다.`);
38
38
  }
39
39
 
40
40
  return {
@@ -59,7 +59,7 @@ export class Executable<TParams extends ColumnBuilderRecord, TReturns extends Co
59
59
  }
60
60
 
61
61
  /**
62
- * Execute procedure
62
+ * 프로시저 실행
63
63
  */
64
64
  async execute(params: InferColumnExprs<TParams>): Promise<InferColumnExprs<TReturns>[][]> {
65
65
  return this._db.executeDefs<InferColumnExprs<TReturns>>([this.getExecProcQueryDef(params)]);
@@ -67,41 +67,41 @@ export class Executable<TParams extends ColumnBuilderRecord, TReturns extends Co
67
67
  }
68
68
 
69
69
  // ============================================
70
- // executable function
70
+ // executable 함수
71
71
  // ============================================
72
72
 
73
73
  /**
74
- * Factory function to create Executable
74
+ * Executable 생성 팩토리 함수
75
75
  *
76
- * Used when registering procedures in DbContext.
77
- * Wraps procedures defined by ProcedureBuilder and returns them as Executable.
76
+ * DbContext에 프로시저를 등록할 사용한다.
77
+ * ProcedureBuilder 정의된 프로시저를 Executable로 래핑하여 반환한다.
78
78
  *
79
- * @template TParams - Procedure parameter type
80
- * @template TReturns - Procedure return type
81
- * @param db - DbContext instance
82
- * @param builder - ProcedureBuilder instance
83
- * @returns Executable factory function
79
+ * @template TParams - 프로시저 파라미터 타입
80
+ * @template TReturns - 프로시저 반환 타입
81
+ * @param db - DbContext 인스턴스
82
+ * @param builder - ProcedureBuilder 인스턴스
83
+ * @returns Executable 팩토리 함수
84
84
  *
85
85
  * @example
86
86
  * ```typescript
87
- * // Define procedure
87
+ * // 프로시저 정의
88
88
  * const GetUserById = Procedure("GetUserById")
89
89
  * .database("mydb")
90
90
  * .params((c) => ({ userId: c.bigint() }))
91
91
  * .returns((c) => ({ id: c.bigint(), name: c.varchar(100) }))
92
92
  * .body("SELECT id, name FROM User WHERE id = userId");
93
93
  *
94
- * // Register in DbContext
94
+ * // DbContext에 등록
95
95
  * class MyDb extends DbContext {
96
96
  * getUserById = executable(this, GetUserById);
97
97
  * }
98
98
  *
99
- * // Use
99
+ * // 사용
100
100
  * const result = await db.getUserById().execute({ userId: 1n });
101
101
  * ```
102
102
  *
103
- * @see {@link Executable} Execution class
104
- * @see {@link ProcedureBuilder} Procedure definition
103
+ * @see {@link Executable} 실행 클래스
104
+ * @see {@link ProcedureBuilder} 프로시저 정의
105
105
  */
106
106
  export function executable<
107
107
  TParams extends ColumnBuilderRecord,