@simplysm/orm-common 13.0.100 → 14.0.4
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.
- package/README.md +90 -147
- package/dist/create-db-context.d.ts +10 -10
- package/dist/create-db-context.js +312 -276
- package/dist/create-db-context.js.map +1 -6
- package/dist/ddl/column-ddl.d.ts +4 -4
- package/dist/ddl/column-ddl.js +41 -35
- package/dist/ddl/column-ddl.js.map +1 -6
- package/dist/ddl/initialize.d.ts +17 -17
- package/dist/ddl/initialize.js +200 -142
- package/dist/ddl/initialize.js.map +1 -6
- package/dist/ddl/relation-ddl.d.ts +6 -6
- package/dist/ddl/relation-ddl.js +55 -48
- package/dist/ddl/relation-ddl.js.map +1 -6
- package/dist/ddl/schema-ddl.d.ts +4 -4
- package/dist/ddl/schema-ddl.js +21 -15
- package/dist/ddl/schema-ddl.js.map +1 -6
- package/dist/ddl/table-ddl.d.ts +20 -20
- package/dist/ddl/table-ddl.js +139 -93
- package/dist/ddl/table-ddl.js.map +1 -6
- package/dist/define-db-context.js +10 -13
- package/dist/define-db-context.js.map +1 -6
- package/dist/errors/db-transaction-error.d.ts +15 -15
- package/dist/errors/db-transaction-error.d.ts.map +1 -1
- package/dist/errors/db-transaction-error.js +53 -19
- package/dist/errors/db-transaction-error.js.map +1 -6
- package/dist/exec/executable.d.ts +23 -23
- package/dist/exec/executable.js +94 -40
- package/dist/exec/executable.js.map +1 -6
- package/dist/exec/queryable.d.ts +97 -97
- package/dist/exec/queryable.js +1310 -1204
- package/dist/exec/queryable.js.map +1 -6
- package/dist/exec/search-parser.d.ts +31 -31
- package/dist/exec/search-parser.d.ts.map +1 -1
- package/dist/exec/search-parser.js +158 -59
- package/dist/exec/search-parser.js.map +1 -6
- package/dist/expr/expr-unit.d.ts +4 -4
- package/dist/expr/expr-unit.js +24 -18
- package/dist/expr/expr-unit.js.map +1 -6
- package/dist/expr/expr.d.ts +108 -108
- package/dist/expr/expr.js +1872 -1844
- package/dist/expr/expr.js.map +1 -6
- package/dist/index.js +23 -1
- package/dist/index.js.map +1 -6
- package/dist/models/system-migration.js +7 -7
- package/dist/models/system-migration.js.map +1 -6
- package/dist/query-builder/base/expr-renderer-base.d.ts +10 -10
- package/dist/query-builder/base/expr-renderer-base.js +27 -21
- package/dist/query-builder/base/expr-renderer-base.js.map +1 -6
- package/dist/query-builder/base/query-builder-base.d.ts +21 -21
- package/dist/query-builder/base/query-builder-base.d.ts.map +1 -1
- package/dist/query-builder/base/query-builder-base.js +90 -80
- package/dist/query-builder/base/query-builder-base.js.map +1 -6
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +5 -5
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.js +447 -420
- package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -6
- package/dist/query-builder/mssql/mssql-query-builder.d.ts +2 -2
- package/dist/query-builder/mssql/mssql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-query-builder.js +483 -443
- package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -6
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +5 -5
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.js +451 -419
- package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -6
- package/dist/query-builder/mysql/mysql-query-builder.d.ts +10 -10
- package/dist/query-builder/mysql/mysql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.js +570 -479
- package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -6
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +5 -5
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js +449 -422
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -6
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts +8 -8
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.js +511 -460
- package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -6
- package/dist/query-builder/query-builder.d.ts +1 -1
- package/dist/query-builder/query-builder.js +13 -13
- package/dist/query-builder/query-builder.js.map +1 -6
- package/dist/schema/factory/column-builder.d.ts +84 -84
- package/dist/schema/factory/column-builder.js +248 -185
- package/dist/schema/factory/column-builder.js.map +1 -6
- package/dist/schema/factory/index-builder.d.ts +38 -38
- package/dist/schema/factory/index-builder.js +144 -85
- package/dist/schema/factory/index-builder.js.map +1 -6
- package/dist/schema/factory/relation-builder.d.ts +99 -99
- package/dist/schema/factory/relation-builder.d.ts.map +1 -1
- package/dist/schema/factory/relation-builder.js +274 -136
- package/dist/schema/factory/relation-builder.js.map +1 -6
- package/dist/schema/procedure-builder.d.ts +51 -51
- package/dist/schema/procedure-builder.d.ts.map +1 -1
- package/dist/schema/procedure-builder.js +205 -131
- package/dist/schema/procedure-builder.js.map +1 -6
- package/dist/schema/table-builder.d.ts +55 -55
- package/dist/schema/table-builder.d.ts.map +1 -1
- package/dist/schema/table-builder.js +274 -205
- package/dist/schema/table-builder.js.map +1 -6
- package/dist/schema/view-builder.d.ts +44 -44
- package/dist/schema/view-builder.d.ts.map +1 -1
- package/dist/schema/view-builder.js +189 -116
- package/dist/schema/view-builder.js.map +1 -6
- package/dist/types/column.d.ts +21 -21
- package/dist/types/column.js +60 -30
- package/dist/types/column.js.map +1 -6
- package/dist/types/db-context-def.d.ts +9 -9
- package/dist/types/db-context-def.js +2 -1
- package/dist/types/db-context-def.js.map +1 -6
- package/dist/types/db.d.ts +47 -47
- package/dist/types/db.js +15 -5
- package/dist/types/db.js.map +1 -6
- package/dist/types/expr.d.ts +81 -81
- package/dist/types/expr.d.ts.map +1 -1
- package/dist/types/expr.js +3 -1
- package/dist/types/expr.js.map +1 -6
- package/dist/types/query-def.d.ts +46 -46
- package/dist/types/query-def.d.ts.map +1 -1
- package/dist/types/query-def.js +31 -24
- package/dist/types/query-def.js.map +1 -6
- package/dist/utils/result-parser.d.ts +11 -11
- package/dist/utils/result-parser.js +362 -221
- package/dist/utils/result-parser.js.map +1 -6
- package/docs/core.md +117 -145
- package/docs/expression.md +186 -203
- package/docs/query-builder.md +75 -42
- package/docs/queryable.md +189 -151
- package/docs/schema-builders.md +172 -283
- package/docs/types.md +229 -173
- package/package.json +7 -5
- package/src/create-db-context.ts +31 -31
- package/src/ddl/column-ddl.ts +4 -4
- package/src/ddl/initialize.ts +38 -38
- package/src/ddl/relation-ddl.ts +6 -6
- package/src/ddl/schema-ddl.ts +4 -4
- package/src/ddl/table-ddl.ts +24 -24
- package/src/errors/db-transaction-error.ts +13 -13
- package/src/exec/executable.ts +25 -25
- package/src/exec/queryable.ts +152 -152
- package/src/exec/search-parser.ts +50 -50
- package/src/expr/expr-unit.ts +4 -4
- package/src/expr/expr.ts +118 -118
- package/src/index.ts +8 -8
- package/src/models/system-migration.ts +1 -1
- package/src/query-builder/base/expr-renderer-base.ts +21 -21
- package/src/query-builder/base/query-builder-base.ts +33 -33
- package/src/query-builder/mssql/mssql-expr-renderer.ts +28 -28
- package/src/query-builder/mssql/mssql-query-builder.ts +37 -37
- package/src/query-builder/mysql/mysql-expr-renderer.ts +29 -29
- package/src/query-builder/mysql/mysql-query-builder.ts +70 -70
- package/src/query-builder/postgresql/postgresql-expr-renderer.ts +22 -22
- package/src/query-builder/postgresql/postgresql-query-builder.ts +54 -54
- package/src/query-builder/query-builder.ts +1 -1
- package/src/schema/factory/column-builder.ts +86 -86
- package/src/schema/factory/index-builder.ts +38 -38
- package/src/schema/factory/relation-builder.ts +102 -102
- package/src/schema/procedure-builder.ts +52 -52
- package/src/schema/table-builder.ts +56 -56
- package/src/schema/view-builder.ts +47 -47
- package/src/types/column.ts +24 -24
- package/src/types/db-context-def.ts +15 -15
- package/src/types/db.ts +50 -50
- package/src/types/expr.ts +103 -103
- package/src/types/query-def.ts +50 -50
- package/src/utils/result-parser.ts +88 -88
- package/docs/utilities.md +0 -27
- package/tests/db-context/create-db-context.spec.ts +0 -193
- package/tests/db-context/define-db-context.spec.ts +0 -17
- package/tests/ddl/basic.expected.ts +0 -341
- package/tests/ddl/basic.spec.ts +0 -557
- package/tests/ddl/column-builder.expected.ts +0 -310
- package/tests/ddl/column-builder.spec.ts +0 -525
- package/tests/ddl/index-builder.expected.ts +0 -38
- package/tests/ddl/index-builder.spec.ts +0 -148
- package/tests/ddl/procedure-builder.expected.ts +0 -52
- package/tests/ddl/procedure-builder.spec.ts +0 -128
- package/tests/ddl/relation-builder.expected.ts +0 -36
- package/tests/ddl/relation-builder.spec.ts +0 -171
- package/tests/ddl/table-builder.expected.ts +0 -113
- package/tests/ddl/table-builder.spec.ts +0 -399
- package/tests/ddl/view-builder.expected.ts +0 -38
- package/tests/ddl/view-builder.spec.ts +0 -116
- package/tests/dml/delete.expected.ts +0 -96
- package/tests/dml/delete.spec.ts +0 -127
- package/tests/dml/insert.expected.ts +0 -192
- package/tests/dml/insert.spec.ts +0 -210
- package/tests/dml/update.expected.ts +0 -176
- package/tests/dml/update.spec.ts +0 -222
- package/tests/dml/upsert.expected.ts +0 -215
- package/tests/dml/upsert.spec.ts +0 -190
- package/tests/errors/queryable-errors.spec.ts +0 -126
- package/tests/escape.spec.ts +0 -59
- package/tests/examples/pivot.expected.ts +0 -211
- package/tests/examples/pivot.spec.ts +0 -200
- package/tests/examples/sampling.expected.ts +0 -69
- package/tests/examples/sampling.spec.ts +0 -42
- package/tests/examples/unpivot.expected.ts +0 -120
- package/tests/examples/unpivot.spec.ts +0 -161
- package/tests/exec/search-parser.spec.ts +0 -267
- package/tests/executable/basic.expected.ts +0 -18
- package/tests/executable/basic.spec.ts +0 -54
- package/tests/expr/comparison.expected.ts +0 -282
- package/tests/expr/comparison.spec.ts +0 -334
- package/tests/expr/conditional.expected.ts +0 -134
- package/tests/expr/conditional.spec.ts +0 -249
- package/tests/expr/date.expected.ts +0 -332
- package/tests/expr/date.spec.ts +0 -459
- package/tests/expr/math.expected.ts +0 -62
- package/tests/expr/math.spec.ts +0 -59
- package/tests/expr/string.expected.ts +0 -218
- package/tests/expr/string.spec.ts +0 -300
- package/tests/expr/utility.expected.ts +0 -147
- package/tests/expr/utility.spec.ts +0 -155
- package/tests/select/basic.expected.ts +0 -322
- package/tests/select/basic.spec.ts +0 -433
- package/tests/select/filter.expected.ts +0 -357
- package/tests/select/filter.spec.ts +0 -954
- package/tests/select/group.expected.ts +0 -169
- package/tests/select/group.spec.ts +0 -159
- package/tests/select/join.expected.ts +0 -582
- package/tests/select/join.spec.ts +0 -692
- package/tests/select/order.expected.ts +0 -150
- package/tests/select/order.spec.ts +0 -140
- package/tests/select/recursive-cte.expected.ts +0 -244
- package/tests/select/recursive-cte.spec.ts +0 -514
- package/tests/select/result-meta.spec.ts +0 -270
- package/tests/select/subquery.expected.ts +0 -363
- package/tests/select/subquery.spec.ts +0 -441
- package/tests/select/view.expected.ts +0 -155
- package/tests/select/view.spec.ts +0 -235
- package/tests/select/window.expected.ts +0 -345
- package/tests/select/window.spec.ts +0 -433
- package/tests/setup/MockExecutor.ts +0 -18
- package/tests/setup/TestDbContext.ts +0 -59
- package/tests/setup/models/Company.ts +0 -13
- package/tests/setup/models/Employee.ts +0 -10
- package/tests/setup/models/MonthlySales.ts +0 -11
- package/tests/setup/models/Post.ts +0 -16
- package/tests/setup/models/Sales.ts +0 -10
- package/tests/setup/models/User.ts +0 -19
- package/tests/setup/procedure/GetAllUsers.ts +0 -9
- package/tests/setup/procedure/GetUserById.ts +0 -12
- package/tests/setup/test-utils.ts +0 -72
- package/tests/setup/views/ActiveUsers.ts +0 -8
- package/tests/setup/views/UserSummary.ts +0 -11
- package/tests/types/nullable-queryable-record.spec.ts +0 -97
- package/tests/utils/result-parser-perf.spec.ts +0 -143
- package/tests/utils/result-parser.spec.ts +0 -667
package/src/types/query-def.ts
CHANGED
|
@@ -4,12 +4,12 @@ import type { Expr, WhereExpr } from "./expr";
|
|
|
4
4
|
//#region ========== Common ==========
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
* DB
|
|
7
|
+
* DB 객체 이름 (table, View, Procedure 등)
|
|
8
8
|
*
|
|
9
|
-
* DBMS
|
|
10
|
-
* - MySQL: `database.name` (schema
|
|
11
|
-
* - MSSQL: `database.schema.name` (schema
|
|
12
|
-
* - PostgreSQL: `schema.name` (database
|
|
9
|
+
* DBMS별 네임스페이스:
|
|
10
|
+
* - MySQL: `database.name` (schema 무시)
|
|
11
|
+
* - MSSQL: `database.schema.name` (schema 기본값 dbo)
|
|
12
|
+
* - PostgreSQL: `schema.name` (database는 연결용)
|
|
13
13
|
*/
|
|
14
14
|
export interface QueryDefObjectName {
|
|
15
15
|
database?: string;
|
|
@@ -22,9 +22,9 @@ export interface QueryDefObjectName {
|
|
|
22
22
|
//#region ========== DML ==========
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
-
* CUD query OUTPUT
|
|
25
|
+
* CUD query OUTPUT 절 정의
|
|
26
26
|
*
|
|
27
|
-
*
|
|
27
|
+
* INSERT/UPDATE/DELETE 후 반환값 정의
|
|
28
28
|
*/
|
|
29
29
|
export interface CudOutputDef {
|
|
30
30
|
columns: string[];
|
|
@@ -33,22 +33,22 @@ export interface CudOutputDef {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
* SELECT
|
|
36
|
+
* SELECT query 정의
|
|
37
37
|
*
|
|
38
|
-
* @property type - Query
|
|
39
|
-
* @property from - FROM
|
|
38
|
+
* @property type - Query 타입 ("select")
|
|
39
|
+
* @property from - FROM 절 (table/subquery)
|
|
40
40
|
* @property as - Table alias
|
|
41
|
-
* @property select - SELECT
|
|
42
|
-
* @property distinct -
|
|
41
|
+
* @property select - SELECT 절 column 매핑
|
|
42
|
+
* @property distinct - DISTINCT 여부
|
|
43
43
|
* @property top - TOP N (MSSQL)
|
|
44
|
-
* @property lock -
|
|
45
|
-
* @property where - WHERE
|
|
46
|
-
* @property joins - JOIN
|
|
47
|
-
* @property orderBy - ORDER BY [column, direction]
|
|
44
|
+
* @property lock - 잠금 여부
|
|
45
|
+
* @property where - WHERE 조건 배열
|
|
46
|
+
* @property joins - JOIN 정의 배열
|
|
47
|
+
* @property orderBy - ORDER BY [column, direction] 배열
|
|
48
48
|
* @property limit - LIMIT [offset, count]
|
|
49
|
-
* @property groupBy - GROUP BY expression
|
|
50
|
-
* @property having - HAVING
|
|
51
|
-
* @property with -
|
|
49
|
+
* @property groupBy - GROUP BY expression 배열
|
|
50
|
+
* @property having - HAVING 조건 배열
|
|
51
|
+
* @property with - 재귀 CTE 정의
|
|
52
52
|
*/
|
|
53
53
|
export interface SelectQueryDef {
|
|
54
54
|
type: "select";
|
|
@@ -68,21 +68,21 @@ export interface SelectQueryDef {
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
/**
|
|
71
|
-
* JOIN
|
|
71
|
+
* JOIN query 정의
|
|
72
72
|
*
|
|
73
|
-
* SelectQueryDef
|
|
73
|
+
* SelectQueryDef 확장 + isSingle 플래그
|
|
74
74
|
*/
|
|
75
75
|
export interface SelectQueryDefJoin extends SelectQueryDef {
|
|
76
|
-
/**
|
|
76
|
+
/** 단일 결과 여부 (1:1 관계) */
|
|
77
77
|
isSingle?: boolean;
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
/**
|
|
81
|
-
* INSERT
|
|
81
|
+
* INSERT query 정의
|
|
82
82
|
*
|
|
83
|
-
* @property records -
|
|
84
|
-
* @property overrideIdentity -
|
|
85
|
-
* @property output - OUTPUT
|
|
83
|
+
* @property records - 삽입할 레코드 배열
|
|
84
|
+
* @property overrideIdentity - IDENTITY_INSERT 활성화 여부
|
|
85
|
+
* @property output - OUTPUT 절 정의
|
|
86
86
|
*/
|
|
87
87
|
export interface InsertQueryDef {
|
|
88
88
|
type: "insert";
|
|
@@ -93,9 +93,9 @@ export interface InsertQueryDef {
|
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
/**
|
|
96
|
-
*
|
|
96
|
+
* 조건부 INSERT query 정의
|
|
97
97
|
*
|
|
98
|
-
*
|
|
98
|
+
* 존재하지 않을 때만 삽입
|
|
99
99
|
*/
|
|
100
100
|
export interface InsertIfNotExistsQueryDef {
|
|
101
101
|
type: "insertIfNotExists";
|
|
@@ -107,9 +107,9 @@ export interface InsertIfNotExistsQueryDef {
|
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
/**
|
|
110
|
-
* INSERT INTO SELECT
|
|
110
|
+
* INSERT INTO SELECT query 정의
|
|
111
111
|
*
|
|
112
|
-
*
|
|
112
|
+
* Subquery 결과를 삽입
|
|
113
113
|
*/
|
|
114
114
|
export interface InsertIntoQueryDef {
|
|
115
115
|
type: "insertInto";
|
|
@@ -120,10 +120,10 @@ export interface InsertIntoQueryDef {
|
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
/**
|
|
123
|
-
* UPDATE
|
|
123
|
+
* UPDATE query 정의
|
|
124
124
|
*
|
|
125
|
-
* @property record -
|
|
126
|
-
* @property joins - UPDATE JOIN (
|
|
125
|
+
* @property record - 갱신할 column/값 매핑
|
|
126
|
+
* @property joins - UPDATE JOIN (지원 시)
|
|
127
127
|
*/
|
|
128
128
|
export interface UpdateQueryDef {
|
|
129
129
|
type: "update";
|
|
@@ -138,7 +138,7 @@ export interface UpdateQueryDef {
|
|
|
138
138
|
}
|
|
139
139
|
|
|
140
140
|
/**
|
|
141
|
-
* DELETE
|
|
141
|
+
* DELETE query 정의
|
|
142
142
|
*/
|
|
143
143
|
export interface DeleteQueryDef {
|
|
144
144
|
type: "delete";
|
|
@@ -152,9 +152,9 @@ export interface DeleteQueryDef {
|
|
|
152
152
|
}
|
|
153
153
|
|
|
154
154
|
/**
|
|
155
|
-
* UPSERT
|
|
155
|
+
* UPSERT query 정의
|
|
156
156
|
*
|
|
157
|
-
* INSERT
|
|
157
|
+
* INSERT 또는 UPDATE (MERGE 패턴)
|
|
158
158
|
*/
|
|
159
159
|
export interface UpsertQueryDef {
|
|
160
160
|
type: "upsert";
|
|
@@ -170,7 +170,7 @@ export interface UpsertQueryDef {
|
|
|
170
170
|
|
|
171
171
|
//#region ========== Utils ==========
|
|
172
172
|
|
|
173
|
-
/** FK
|
|
173
|
+
/** FK 제약조건 활성화/비활성화 */
|
|
174
174
|
export interface SwitchFkQueryDef {
|
|
175
175
|
type: "switchFk";
|
|
176
176
|
table: QueryDefObjectName;
|
|
@@ -181,7 +181,7 @@ export interface SwitchFkQueryDef {
|
|
|
181
181
|
|
|
182
182
|
//#region ========== DDL - Schema ==========
|
|
183
183
|
|
|
184
|
-
/**
|
|
184
|
+
/** Schema 초기화 (모든 객체 삭제) */
|
|
185
185
|
export interface ClearSchemaQueryDef {
|
|
186
186
|
type: "clearSchema";
|
|
187
187
|
database: string;
|
|
@@ -249,7 +249,7 @@ export interface DropColumnQueryDef {
|
|
|
249
249
|
column: string;
|
|
250
250
|
}
|
|
251
251
|
|
|
252
|
-
/** MODIFY COLUMN (
|
|
252
|
+
/** MODIFY COLUMN (타입/속성 변경) */
|
|
253
253
|
export interface ModifyColumnQueryDef {
|
|
254
254
|
type: "modifyColumn";
|
|
255
255
|
table: QueryDefObjectName;
|
|
@@ -376,7 +376,7 @@ export interface ExecProcQueryDef {
|
|
|
376
376
|
|
|
377
377
|
//#region ========== Meta ==========
|
|
378
378
|
|
|
379
|
-
/**
|
|
379
|
+
/** Schema 존재 여부 확인 */
|
|
380
380
|
export interface SchemaExistsQueryDef {
|
|
381
381
|
type: "schemaExists";
|
|
382
382
|
database: string;
|
|
@@ -385,13 +385,13 @@ export interface SchemaExistsQueryDef {
|
|
|
385
385
|
|
|
386
386
|
//#endregion
|
|
387
387
|
|
|
388
|
-
//#region ========== DDL
|
|
388
|
+
//#region ========== DDL 타입 상수 ==========
|
|
389
389
|
|
|
390
390
|
/**
|
|
391
|
-
* DDL QueryDef union (
|
|
391
|
+
* DDL QueryDef union (컴파일 타임 검증용)
|
|
392
392
|
*
|
|
393
393
|
* @remarks
|
|
394
|
-
* switchFk
|
|
394
|
+
* switchFk는 DDL이 아니므로 제외 (트랜잭션 내에서 사용 가능)
|
|
395
395
|
*/
|
|
396
396
|
type DdlQueryDef =
|
|
397
397
|
| ClearSchemaQueryDef
|
|
@@ -415,13 +415,13 @@ type DdlQueryDef =
|
|
|
415
415
|
| DropProcQueryDef;
|
|
416
416
|
|
|
417
417
|
/**
|
|
418
|
-
* DDL (Data Definition Language)
|
|
418
|
+
* DDL (Data Definition Language) 타입 상수
|
|
419
419
|
*
|
|
420
|
-
*
|
|
421
|
-
*
|
|
420
|
+
* 트랜잭션 내 DDL 차단 및 DDL 타입 검증에 사용
|
|
421
|
+
* DdlQueryDef와의 컴파일 타임 동기화를 위해 satisfies 키워드 사용
|
|
422
422
|
*
|
|
423
423
|
* @remarks
|
|
424
|
-
* switchFk
|
|
424
|
+
* switchFk는 DDL이 아니므로 제외 (트랜잭션 내에서 사용 가능)
|
|
425
425
|
*/
|
|
426
426
|
export const DDL_TYPES = [
|
|
427
427
|
"clearSchema",
|
|
@@ -445,15 +445,15 @@ export const DDL_TYPES = [
|
|
|
445
445
|
"dropProc",
|
|
446
446
|
] as const satisfies readonly DdlQueryDef["type"][];
|
|
447
447
|
|
|
448
|
-
/** DDL
|
|
448
|
+
/** DDL 타입 union */
|
|
449
449
|
export type DdlType = (typeof DDL_TYPES)[number];
|
|
450
450
|
|
|
451
451
|
//#endregion
|
|
452
452
|
|
|
453
|
-
//#region ==========
|
|
453
|
+
//#region ========== 결합 Union 타입 ==========
|
|
454
454
|
|
|
455
455
|
/**
|
|
456
|
-
*
|
|
456
|
+
* 전체 query 정의 union 타입
|
|
457
457
|
*
|
|
458
458
|
* DML (SELECT/INSERT/UPDATE/DELETE/UPSERT) +
|
|
459
459
|
* DDL (Table/Column/PK/FK/Index/View/Procedure) +
|