@simplysm/orm-common 13.0.69 → 13.0.70
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 +54 -1447
- package/dist/create-db-context.d.ts +10 -10
- package/dist/create-db-context.js +9 -9
- package/dist/create-db-context.js.map +1 -1
- package/dist/ddl/column-ddl.d.ts +4 -4
- package/dist/ddl/initialize.d.ts +17 -17
- package/dist/ddl/initialize.js +2 -2
- package/dist/ddl/initialize.js.map +1 -1
- package/dist/ddl/relation-ddl.d.ts +6 -6
- package/dist/ddl/schema-ddl.d.ts +4 -4
- package/dist/ddl/table-ddl.d.ts +24 -24
- package/dist/ddl/table-ddl.js +4 -4
- package/dist/ddl/table-ddl.js.map +1 -1
- package/dist/errors/db-transaction-error.d.ts +15 -15
- package/dist/errors/db-transaction-error.d.ts.map +1 -1
- package/dist/exec/executable.d.ts +23 -23
- package/dist/exec/executable.js +3 -3
- package/dist/exec/executable.js.map +1 -1
- package/dist/exec/queryable.d.ts +160 -160
- package/dist/exec/queryable.js +119 -119
- package/dist/exec/queryable.js.map +1 -1
- package/dist/exec/search-parser.d.ts +37 -37
- package/dist/exec/search-parser.d.ts.map +1 -1
- package/dist/expr/expr-unit.d.ts +4 -4
- package/dist/expr/expr.d.ts +257 -257
- package/dist/expr/expr.js +265 -265
- package/dist/expr/expr.js.map +1 -1
- package/dist/query-builder/base/expr-renderer-base.d.ts +9 -9
- package/dist/query-builder/base/expr-renderer-base.js +2 -2
- package/dist/query-builder/base/expr-renderer-base.js.map +1 -1
- package/dist/query-builder/base/query-builder-base.d.ts +26 -26
- package/dist/query-builder/base/query-builder-base.d.ts.map +1 -1
- package/dist/query-builder/base/query-builder-base.js +22 -22
- package/dist/query-builder/base/query-builder-base.js.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.js +18 -18
- package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -1
- 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 +11 -11
- package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.js +17 -17
- package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.d.ts +8 -8
- package/dist/query-builder/mysql/mysql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.js +5 -5
- package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js +17 -17
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts +5 -5
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.js +8 -8
- package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -1
- package/dist/query-builder/query-builder.d.ts +1 -1
- package/dist/schema/factory/column-builder.d.ts +79 -79
- package/dist/schema/factory/column-builder.js +42 -42
- package/dist/schema/factory/index-builder.d.ts +39 -39
- package/dist/schema/factory/index-builder.js +26 -26
- 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 +38 -38
- package/dist/schema/procedure-builder.d.ts +49 -49
- package/dist/schema/procedure-builder.d.ts.map +1 -1
- package/dist/schema/procedure-builder.js +33 -33
- package/dist/schema/table-builder.d.ts +59 -59
- package/dist/schema/table-builder.d.ts.map +1 -1
- package/dist/schema/table-builder.js +43 -43
- package/dist/schema/view-builder.d.ts +49 -49
- package/dist/schema/view-builder.d.ts.map +1 -1
- package/dist/schema/view-builder.js +32 -32
- package/dist/types/column.d.ts +22 -22
- package/dist/types/column.js +1 -1
- package/dist/types/column.js.map +1 -1
- package/dist/types/db.d.ts +40 -40
- package/dist/types/expr.d.ts +59 -59
- package/dist/types/expr.d.ts.map +1 -1
- package/dist/types/query-def.d.ts +44 -44
- package/dist/types/query-def.d.ts.map +1 -1
- package/dist/utils/result-parser.d.ts +11 -11
- package/dist/utils/result-parser.js +3 -3
- package/dist/utils/result-parser.js.map +1 -1
- package/package.json +5 -5
- package/src/create-db-context.ts +20 -20
- package/src/ddl/column-ddl.ts +4 -4
- package/src/ddl/initialize.ts +259 -259
- package/src/ddl/relation-ddl.ts +89 -89
- package/src/ddl/schema-ddl.ts +4 -4
- package/src/ddl/table-ddl.ts +189 -189
- package/src/errors/db-transaction-error.ts +13 -13
- package/src/exec/executable.ts +25 -25
- package/src/exec/queryable.ts +2033 -2033
- package/src/exec/search-parser.ts +57 -57
- package/src/expr/expr-unit.ts +4 -4
- package/src/expr/expr.ts +2140 -2140
- package/src/query-builder/base/expr-renderer-base.ts +237 -237
- package/src/query-builder/base/query-builder-base.ts +213 -213
- package/src/query-builder/mssql/mssql-expr-renderer.ts +607 -607
- package/src/query-builder/mssql/mssql-query-builder.ts +650 -650
- package/src/query-builder/mysql/mysql-expr-renderer.ts +613 -613
- package/src/query-builder/mysql/mysql-query-builder.ts +759 -759
- package/src/query-builder/postgresql/postgresql-expr-renderer.ts +611 -611
- package/src/query-builder/postgresql/postgresql-query-builder.ts +686 -686
- package/src/query-builder/query-builder.ts +19 -19
- package/src/schema/factory/column-builder.ts +423 -423
- package/src/schema/factory/index-builder.ts +164 -164
- package/src/schema/factory/relation-builder.ts +453 -453
- package/src/schema/procedure-builder.ts +232 -232
- package/src/schema/table-builder.ts +319 -319
- package/src/schema/view-builder.ts +221 -221
- package/src/types/column.ts +188 -188
- package/src/types/db.ts +208 -208
- package/src/types/expr.ts +697 -697
- package/src/types/query-def.ts +513 -513
- package/src/utils/result-parser.ts +458 -458
- package/tests/db-context/create-db-context.spec.ts +224 -0
- package/tests/db-context/define-db-context.spec.ts +68 -0
- package/tests/ddl/basic.expected.ts +341 -0
- package/tests/ddl/basic.spec.ts +714 -0
- package/tests/ddl/column-builder.expected.ts +310 -0
- package/tests/ddl/column-builder.spec.ts +637 -0
- package/tests/ddl/index-builder.expected.ts +38 -0
- package/tests/ddl/index-builder.spec.ts +202 -0
- package/tests/ddl/procedure-builder.expected.ts +52 -0
- package/tests/ddl/procedure-builder.spec.ts +234 -0
- package/tests/ddl/relation-builder.expected.ts +36 -0
- package/tests/ddl/relation-builder.spec.ts +372 -0
- package/tests/ddl/table-builder.expected.ts +113 -0
- package/tests/ddl/table-builder.spec.ts +433 -0
- package/tests/ddl/view-builder.expected.ts +38 -0
- package/tests/ddl/view-builder.spec.ts +176 -0
- package/tests/dml/delete.expected.ts +96 -0
- package/tests/dml/delete.spec.ts +160 -0
- package/tests/dml/insert.expected.ts +192 -0
- package/tests/dml/insert.spec.ts +288 -0
- package/tests/dml/update.expected.ts +176 -0
- package/tests/dml/update.spec.ts +318 -0
- package/tests/dml/upsert.expected.ts +215 -0
- package/tests/dml/upsert.spec.ts +242 -0
- package/tests/errors/queryable-errors.spec.ts +177 -0
- package/tests/escape.spec.ts +100 -0
- package/tests/examples/pivot.expected.ts +211 -0
- package/tests/examples/pivot.spec.ts +533 -0
- package/tests/examples/sampling.expected.ts +69 -0
- package/tests/examples/sampling.spec.ts +104 -0
- package/tests/examples/unpivot.expected.ts +120 -0
- package/tests/examples/unpivot.spec.ts +226 -0
- package/tests/exec/search-parser.spec.ts +283 -0
- package/tests/executable/basic.expected.ts +18 -0
- package/tests/executable/basic.spec.ts +54 -0
- package/tests/expr/comparison.expected.ts +282 -0
- package/tests/expr/comparison.spec.ts +400 -0
- package/tests/expr/conditional.expected.ts +134 -0
- package/tests/expr/conditional.spec.ts +276 -0
- package/tests/expr/date.expected.ts +332 -0
- package/tests/expr/date.spec.ts +526 -0
- package/tests/expr/math.expected.ts +62 -0
- package/tests/expr/math.spec.ts +106 -0
- package/tests/expr/string.expected.ts +218 -0
- package/tests/expr/string.spec.ts +356 -0
- package/tests/expr/utility.expected.ts +147 -0
- package/tests/expr/utility.spec.ts +182 -0
- package/tests/select/basic.expected.ts +322 -0
- package/tests/select/basic.spec.ts +502 -0
- package/tests/select/filter.expected.ts +357 -0
- package/tests/select/filter.spec.ts +1068 -0
- package/tests/select/group.expected.ts +169 -0
- package/tests/select/group.spec.ts +244 -0
- package/tests/select/join.expected.ts +582 -0
- package/tests/select/join.spec.ts +805 -0
- package/tests/select/order.expected.ts +150 -0
- package/tests/select/order.spec.ts +189 -0
- package/tests/select/recursive-cte.expected.ts +244 -0
- package/tests/select/recursive-cte.spec.ts +514 -0
- package/tests/select/result-meta.spec.ts +270 -0
- package/tests/select/subquery.expected.ts +363 -0
- package/tests/select/subquery.spec.ts +537 -0
- package/tests/select/view.expected.ts +155 -0
- package/tests/select/view.spec.ts +235 -0
- package/tests/select/window.expected.ts +345 -0
- package/tests/select/window.spec.ts +618 -0
- package/tests/setup/MockExecutor.ts +18 -0
- package/tests/setup/TestDbContext.ts +59 -0
- package/tests/setup/models/Company.ts +13 -0
- package/tests/setup/models/Employee.ts +10 -0
- package/tests/setup/models/MonthlySales.ts +11 -0
- package/tests/setup/models/Post.ts +16 -0
- package/tests/setup/models/Sales.ts +10 -0
- package/tests/setup/models/User.ts +19 -0
- package/tests/setup/procedure/GetAllUsers.ts +9 -0
- package/tests/setup/procedure/GetUserById.ts +12 -0
- package/tests/setup/test-utils.ts +72 -0
- package/tests/setup/views/ActiveUsers.ts +8 -0
- package/tests/setup/views/UserSummary.ts +11 -0
- package/tests/types/nullable-queryable-record.spec.ts +145 -0
- package/tests/utils/result-parser-perf.spec.ts +210 -0
- package/tests/utils/result-parser.spec.ts +701 -0
- package/docs/expressions.md +0 -172
- package/docs/queries.md +0 -444
- package/docs/schema.md +0 -245
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Index definition builder
|
|
3
3
|
*
|
|
4
|
-
* Fluent API를 통해
|
|
5
|
-
* TableBuilder.indexes()
|
|
4
|
+
* Fluent API를 통해 Index의 column, 유니크 여부, sorting 순서를 definition
|
|
5
|
+
* TableBuilder.indexes()used in
|
|
6
6
|
*
|
|
7
|
-
* @template TKeys -
|
|
7
|
+
* @template TKeys - Index column key array type
|
|
8
8
|
*
|
|
9
9
|
* @example
|
|
10
10
|
* ```typescript
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
* createdAt: c.datetime(),
|
|
17
17
|
* }))
|
|
18
18
|
* .indexes((i) => [
|
|
19
|
-
* // 유니크
|
|
19
|
+
* // 유니크 Index
|
|
20
20
|
* i.index("email").unique(),
|
|
21
21
|
*
|
|
22
|
-
* // 복합
|
|
22
|
+
* // 복합 Index + sorting order
|
|
23
23
|
* i.index("name", "createdAt").orderBy("ASC", "DESC"),
|
|
24
24
|
*
|
|
25
25
|
* // 커스텀 이름
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
* ]);
|
|
28
28
|
* ```
|
|
29
29
|
*
|
|
30
|
-
* @see {@link createIndexFactory}
|
|
31
|
-
* @see {@link TableBuilder}
|
|
30
|
+
* @see {@link createIndexFactory} Index factory
|
|
31
|
+
* @see {@link TableBuilder} Table builder
|
|
32
32
|
*/
|
|
33
33
|
export declare class IndexBuilder<TKeys extends string[]> {
|
|
34
34
|
readonly meta: {
|
|
@@ -41,12 +41,12 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
41
41
|
description?: string;
|
|
42
42
|
};
|
|
43
43
|
/**
|
|
44
|
-
* @param meta -
|
|
45
|
-
* @param meta.columns -
|
|
46
|
-
* @param meta.name -
|
|
47
|
-
* @param meta.unique - 유니크
|
|
48
|
-
* @param meta.orderBy -
|
|
49
|
-
* @param meta.description -
|
|
44
|
+
* @param meta - Index Metadata
|
|
45
|
+
* @param meta.columns - Index column array
|
|
46
|
+
* @param meta.name - Index 이름 (Select)
|
|
47
|
+
* @param meta.unique - 유니크 Index 여부
|
|
48
|
+
* @param meta.orderBy - Column별 sorting order
|
|
49
|
+
* @param meta.description - Index description
|
|
50
50
|
*/
|
|
51
51
|
constructor(meta: {
|
|
52
52
|
columns: TKeys;
|
|
@@ -58,10 +58,10 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
58
58
|
description?: string;
|
|
59
59
|
});
|
|
60
60
|
/**
|
|
61
|
-
*
|
|
61
|
+
* Index set name
|
|
62
62
|
*
|
|
63
|
-
* @param name -
|
|
64
|
-
* @returns
|
|
63
|
+
* @param name - Index 이름
|
|
64
|
+
* @returns new IndexBuilder instance
|
|
65
65
|
*
|
|
66
66
|
* @example
|
|
67
67
|
* ```typescript
|
|
@@ -70,9 +70,9 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
70
70
|
*/
|
|
71
71
|
name(name: string): IndexBuilder<TKeys>;
|
|
72
72
|
/**
|
|
73
|
-
* 유니크
|
|
73
|
+
* 유니크 Index 설정
|
|
74
74
|
*
|
|
75
|
-
* @returns
|
|
75
|
+
* @returns new IndexBuilder instance
|
|
76
76
|
*
|
|
77
77
|
* @example
|
|
78
78
|
* ```typescript
|
|
@@ -81,19 +81,19 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
81
81
|
*/
|
|
82
82
|
unique(): IndexBuilder<TKeys>;
|
|
83
83
|
/**
|
|
84
|
-
*
|
|
84
|
+
* sorting order 설정
|
|
85
85
|
*
|
|
86
|
-
* 각
|
|
86
|
+
* 각 column에 대해 ASC 또는 DESC 지정
|
|
87
87
|
*
|
|
88
|
-
* @param orderBy -
|
|
89
|
-
* @returns
|
|
88
|
+
* @param orderBy - Column별 sorting order (column 수와 동일해야 함)
|
|
89
|
+
* @returns new IndexBuilder instance
|
|
90
90
|
*
|
|
91
91
|
* @example
|
|
92
92
|
* ```typescript
|
|
93
|
-
* // 단일
|
|
93
|
+
* // 단일 column
|
|
94
94
|
* i.index("createdAt").orderBy("DESC")
|
|
95
95
|
*
|
|
96
|
-
* // 복합
|
|
96
|
+
* // 복합 column
|
|
97
97
|
* i.index("status", "createdAt").orderBy("ASC", "DESC")
|
|
98
98
|
* ```
|
|
99
99
|
*/
|
|
@@ -101,20 +101,20 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
101
101
|
[K in keyof TKeys]: "ASC" | "DESC";
|
|
102
102
|
}): IndexBuilder<TKeys>;
|
|
103
103
|
/**
|
|
104
|
-
*
|
|
104
|
+
* Index set description
|
|
105
105
|
*
|
|
106
|
-
* @param description -
|
|
107
|
-
* @returns
|
|
106
|
+
* @param description - Index description (DDL Comment으로 사용)
|
|
107
|
+
* @returns new IndexBuilder instance
|
|
108
108
|
*/
|
|
109
109
|
description(description: string): IndexBuilder<TKeys>;
|
|
110
110
|
}
|
|
111
111
|
/**
|
|
112
|
-
*
|
|
112
|
+
* Index builder factory Generate
|
|
113
113
|
*
|
|
114
|
-
* TableBuilder.indexes()
|
|
114
|
+
* TableBuilder.indexes()used in하는 Index factory
|
|
115
115
|
*
|
|
116
|
-
* @template TColumnKey -
|
|
117
|
-
* @returns
|
|
116
|
+
* @template TColumnKey - Table column key type
|
|
117
|
+
* @returns Index Generate 메서드를 포함한 object
|
|
118
118
|
*
|
|
119
119
|
* @example
|
|
120
120
|
* ```typescript
|
|
@@ -130,20 +130,20 @@ export declare class IndexBuilder<TKeys extends string[]> {
|
|
|
130
130
|
* ]);
|
|
131
131
|
* ```
|
|
132
132
|
*
|
|
133
|
-
* @see {@link IndexBuilder}
|
|
133
|
+
* @see {@link IndexBuilder} Index builder class
|
|
134
134
|
*/
|
|
135
135
|
export declare function createIndexFactory<TColumnKey extends string>(): {
|
|
136
136
|
/**
|
|
137
|
-
*
|
|
137
|
+
* Index Generate
|
|
138
138
|
*
|
|
139
|
-
* @template TKeys -
|
|
140
|
-
* @param columns -
|
|
141
|
-
* @returns IndexBuilder
|
|
139
|
+
* @template TKeys - Index column key array type
|
|
140
|
+
* @param columns - Index column명들
|
|
141
|
+
* @returns IndexBuilder instance
|
|
142
142
|
*
|
|
143
143
|
* @example
|
|
144
144
|
* ```typescript
|
|
145
|
-
* i.index("email") // 단일
|
|
146
|
-
* i.index("name", "email") // 복합
|
|
145
|
+
* i.index("email") // 단일 column
|
|
146
|
+
* i.index("name", "email") // 복합 column
|
|
147
147
|
* ```
|
|
148
148
|
*/
|
|
149
149
|
index<TKeys extends TColumnKey[]>(...columns: TKeys): IndexBuilder<TKeys>;
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
class IndexBuilder {
|
|
2
2
|
/**
|
|
3
|
-
* @param meta -
|
|
4
|
-
* @param meta.columns -
|
|
5
|
-
* @param meta.name -
|
|
6
|
-
* @param meta.unique - 유니크
|
|
7
|
-
* @param meta.orderBy -
|
|
8
|
-
* @param meta.description -
|
|
3
|
+
* @param meta - Index Metadata
|
|
4
|
+
* @param meta.columns - Index column array
|
|
5
|
+
* @param meta.name - Index 이름 (Select)
|
|
6
|
+
* @param meta.unique - 유니크 Index 여부
|
|
7
|
+
* @param meta.orderBy - Column별 sorting order
|
|
8
|
+
* @param meta.description - Index description
|
|
9
9
|
*/
|
|
10
10
|
constructor(meta) {
|
|
11
11
|
this.meta = meta;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* Index set name
|
|
15
15
|
*
|
|
16
|
-
* @param name -
|
|
17
|
-
* @returns
|
|
16
|
+
* @param name - Index 이름
|
|
17
|
+
* @returns new IndexBuilder instance
|
|
18
18
|
*
|
|
19
19
|
* @example
|
|
20
20
|
* ```typescript
|
|
@@ -25,9 +25,9 @@ class IndexBuilder {
|
|
|
25
25
|
return new IndexBuilder({ ...this.meta, name });
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
|
-
* 유니크
|
|
28
|
+
* 유니크 Index 설정
|
|
29
29
|
*
|
|
30
|
-
* @returns
|
|
30
|
+
* @returns new IndexBuilder instance
|
|
31
31
|
*
|
|
32
32
|
* @example
|
|
33
33
|
* ```typescript
|
|
@@ -38,19 +38,19 @@ class IndexBuilder {
|
|
|
38
38
|
return new IndexBuilder({ ...this.meta, unique: true });
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
*
|
|
41
|
+
* sorting order 설정
|
|
42
42
|
*
|
|
43
|
-
* 각
|
|
43
|
+
* 각 column에 대해 ASC 또는 DESC 지정
|
|
44
44
|
*
|
|
45
|
-
* @param orderBy -
|
|
46
|
-
* @returns
|
|
45
|
+
* @param orderBy - Column별 sorting order (column 수와 동일해야 함)
|
|
46
|
+
* @returns new IndexBuilder instance
|
|
47
47
|
*
|
|
48
48
|
* @example
|
|
49
49
|
* ```typescript
|
|
50
|
-
* // 단일
|
|
50
|
+
* // 단일 column
|
|
51
51
|
* i.index("createdAt").orderBy("DESC")
|
|
52
52
|
*
|
|
53
|
-
* // 복합
|
|
53
|
+
* // 복합 column
|
|
54
54
|
* i.index("status", "createdAt").orderBy("ASC", "DESC")
|
|
55
55
|
* ```
|
|
56
56
|
*/
|
|
@@ -58,10 +58,10 @@ class IndexBuilder {
|
|
|
58
58
|
return new IndexBuilder({ ...this.meta, orderBy });
|
|
59
59
|
}
|
|
60
60
|
/**
|
|
61
|
-
*
|
|
61
|
+
* Index set description
|
|
62
62
|
*
|
|
63
|
-
* @param description -
|
|
64
|
-
* @returns
|
|
63
|
+
* @param description - Index description (DDL Comment으로 사용)
|
|
64
|
+
* @returns new IndexBuilder instance
|
|
65
65
|
*/
|
|
66
66
|
description(description) {
|
|
67
67
|
return new IndexBuilder({ ...this.meta, description });
|
|
@@ -70,16 +70,16 @@ class IndexBuilder {
|
|
|
70
70
|
function createIndexFactory() {
|
|
71
71
|
return {
|
|
72
72
|
/**
|
|
73
|
-
*
|
|
73
|
+
* Index Generate
|
|
74
74
|
*
|
|
75
|
-
* @template TKeys -
|
|
76
|
-
* @param columns -
|
|
77
|
-
* @returns IndexBuilder
|
|
75
|
+
* @template TKeys - Index column key array type
|
|
76
|
+
* @param columns - Index column명들
|
|
77
|
+
* @returns IndexBuilder instance
|
|
78
78
|
*
|
|
79
79
|
* @example
|
|
80
80
|
* ```typescript
|
|
81
|
-
* i.index("email") // 단일
|
|
82
|
-
* i.index("name", "email") // 복합
|
|
81
|
+
* i.index("email") // 단일 column
|
|
82
|
+
* i.index("name", "email") // 복합 column
|
|
83
83
|
* ```
|
|
84
84
|
*/
|
|
85
85
|
index(...columns) {
|