@simplysm/orm-node 13.0.69 → 13.0.71

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.
@@ -2,9 +2,9 @@ import { EventEmitter } from "@simplysm/core-common";
2
2
  import type { ColumnMeta, IsolationLevel } from "@simplysm/orm-common";
3
3
  import { type DbConn, type MysqlDbConnConfig } from "../types/db-conn";
4
4
  /**
5
- * MySQL 데이터베이스 연결 클래스
5
+ * MySQL database connection class
6
6
  *
7
- * mysql2/promise 라이브러리를 사용하여 MySQL 연결을 관리합니다.
7
+ * Manages MySQL connections using the mysql2/promise library.
8
8
  */
9
9
  export declare class MysqlDbConn extends EventEmitter<{
10
10
  close: void;
@@ -27,7 +27,7 @@ export declare class MysqlDbConn extends EventEmitter<{
27
27
  executeParametrized(query: string, params?: unknown[]): Promise<Record<string, unknown>[][]>;
28
28
  bulkInsert(tableName: string, columnMetas: Record<string, ColumnMeta>, records: Record<string, unknown>[]): Promise<void>;
29
29
  /**
30
- * MySQL LOAD DATA INFILE용 값 이스케이프
30
+ * Escape value for MySQL LOAD DATA INFILE
31
31
  */
32
32
  private _escapeForCsv;
33
33
  private _assertConnected;
@@ -39,20 +39,20 @@ class MysqlDbConn extends EventEmitter {
39
39
  port: this.config.port,
40
40
  user: this.config.username,
41
41
  password: this.config.password,
42
- // root 사용자는 특정 database에 바인딩되지 않고 연결하여
43
- // 모든 데이터베이스에 접근할 있도록 (관리 작업용)
42
+ // Root user connects without binding to specific database
43
+ // to allow access to all databases (for admin operations)
44
44
  database: this.config.username === MysqlDbConn._ROOT_USER ? void 0 : this.config.database,
45
45
  multipleStatements: true,
46
46
  charset: "utf8mb4",
47
47
  infileStreamFactory: (filePath) => fs.createReadStream(filePath)
48
- // LOAD DATA LOCAL INFILE 지원
48
+ // Support for LOAD DATA LOCAL INFILE
49
49
  });
50
50
  conn.on("end", () => {
51
51
  this.emit("close");
52
52
  this._resetState();
53
53
  });
54
54
  conn.on("error", (error) => {
55
- logger.error("DB \uC5F0\uACB0 \uC624\uB958", error.message);
55
+ logger.error("DB connection error", error.message);
56
56
  });
57
57
  this._conn = conn;
58
58
  this._startTimeout();
@@ -97,7 +97,7 @@ class MysqlDbConn extends EventEmitter {
97
97
  }
98
98
  async executeParametrized(query, params) {
99
99
  const conn = this._assertConnected();
100
- logger.debug("\uCFFC\uB9AC \uC2E4\uD589", { queryLength: query.length, params });
100
+ logger.debug("Query execution", { queryLength: query.length, params });
101
101
  try {
102
102
  const [queryResults] = await conn.query({
103
103
  sql: query,
@@ -119,7 +119,7 @@ class MysqlDbConn extends EventEmitter {
119
119
  const error = err;
120
120
  throw new SdError(
121
121
  error,
122
- "\uCFFC\uB9AC \uC218\uD589\uC911 \uC624\uB958\uBC1C\uC0DD" + (error.sql != null ? "\n-- query\n" + error.sql.trim() + "\n--" : "")
122
+ "Error executing query" + (error.sql != null ? "\n-- query\n" + error.sql.trim() + "\n--" : "")
123
123
  );
124
124
  }
125
125
  }
@@ -164,7 +164,7 @@ class MysqlDbConn extends EventEmitter {
164
164
  // Private helpers
165
165
  // ─────────────────────────────────────────────
166
166
  /**
167
- * MySQL LOAD DATA INFILE용 값 이스케이프
167
+ * Escape value for MySQL LOAD DATA INFILE
168
168
  */
169
169
  _escapeForCsv(value, dataType) {
170
170
  if (value == null) {
@@ -193,11 +193,11 @@ class MysqlDbConn extends EventEmitter {
193
193
  return value.toFormatString("HH:mm:ss");
194
194
  case "uuid":
195
195
  return value.toString().replace(/-/g, "");
196
- // BINARY(16) 저장용 hex
196
+ // Hex for BINARY(16) storage
197
197
  case "binary":
198
198
  return bytesToHex(value);
199
199
  default:
200
- throw new SdError(`\uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 DataType: ${JSON.stringify(dataType)}`);
200
+ throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
201
201
  }
202
202
  }
203
203
  _assertConnected() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/connections/mysql-db-conn.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -2,9 +2,9 @@ import { EventEmitter } from "@simplysm/core-common";
2
2
  import type { ColumnMeta, IsolationLevel } from "@simplysm/orm-common";
3
3
  import { type DbConn, type PostgresqlDbConnConfig } from "../types/db-conn";
4
4
  /**
5
- * PostgreSQL 데이터베이스 연결 클래스
5
+ * PostgreSQL database connection class
6
6
  *
7
- * pg 라이브러리를 사용하여 PostgreSQL 연결을 관리합니다.
7
+ * Manages PostgreSQL connections using the pg library.
8
8
  */
9
9
  export declare class PostgresqlDbConn extends EventEmitter<{
10
10
  close: void;
@@ -27,7 +27,7 @@ export declare class PostgresqlDbConn extends EventEmitter<{
27
27
  executeParametrized(query: string, params?: unknown[]): Promise<Record<string, unknown>[][]>;
28
28
  bulkInsert(tableName: string, columnMetas: Record<string, ColumnMeta>, records: Record<string, unknown>[]): Promise<void>;
29
29
  /**
30
- * PostgreSQL COPY CSV용 값 이스케이프
30
+ * Escape value for PostgreSQL COPY CSV
31
31
  */
32
32
  private _escapeForCsv;
33
33
  private _assertConnected;
@@ -46,7 +46,7 @@ class PostgresqlDbConn extends EventEmitter {
46
46
  this._resetState();
47
47
  });
48
48
  client.on("error", (error) => {
49
- logger.error("DB \uC5F0\uACB0 \uC624\uB958", error.message);
49
+ logger.error("DB connection error", error.message);
50
50
  });
51
51
  await client.connect();
52
52
  this._client = client;
@@ -89,7 +89,7 @@ class PostgresqlDbConn extends EventEmitter {
89
89
  }
90
90
  async executeParametrized(query, params) {
91
91
  this._assertConnected();
92
- logger.debug("\uCFFC\uB9AC \uC2E4\uD589", { queryLength: query.length, params });
92
+ logger.debug("Query execution", { queryLength: query.length, params });
93
93
  try {
94
94
  const result = await this._client.query(query, params);
95
95
  this._startTimeout();
@@ -97,7 +97,7 @@ class PostgresqlDbConn extends EventEmitter {
97
97
  } catch (err) {
98
98
  this._startTimeout();
99
99
  const error = err instanceof Error ? err : new Error(String(err));
100
- throw new SdError(error, "\uCFFC\uB9AC \uC218\uD589\uC911 \uC624\uB958\uBC1C\uC0DD\n-- query\n" + query.trim() + "\n--");
100
+ throw new SdError(error, "Error executing query\n-- query\n" + query.trim() + "\n--");
101
101
  }
102
102
  }
103
103
  async bulkInsert(tableName, columnMetas, records) {
@@ -127,7 +127,7 @@ class PostgresqlDbConn extends EventEmitter {
127
127
  // Private helpers
128
128
  // ─────────────────────────────────────────────
129
129
  /**
130
- * PostgreSQL COPY CSV용 값 이스케이프
130
+ * Escape value for PostgreSQL COPY CSV
131
131
  */
132
132
  _escapeForCsv(value, dataType) {
133
133
  if (value == null) {
@@ -161,9 +161,9 @@ class PostgresqlDbConn extends EventEmitter {
161
161
  return value.toString();
162
162
  case "binary":
163
163
  return '"\\x' + bytesToHex(value) + '"';
164
- // PostgreSQL bytea hex 형식 (CSV 쌍따옴표로 감쌈)
164
+ // PostgreSQL bytea hex format (wrapped in CSV double quotes)
165
165
  default:
166
- throw new SdError(`\uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 DataType: ${JSON.stringify(dataType)}`);
166
+ throw new SdError(`Unsupported DataType: ${JSON.stringify(dataType)}`);
167
167
  }
168
168
  }
169
169
  _assertConnected() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/connections/postgresql-db-conn.ts"],
4
- "mappings": "AAAA,SAAS,gBAAgB;AACzB,OAAO,aAAa;AACpB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAGK;AAGP,MAAM,SAAS,QAAQ,QAAQ,oBAAoB;AAO5C,MAAM,yBAAyB,aAAgD;AAAA,EASpF,YACmB,KACA,gBACR,QACT;AACA,UAAM;AAJW;AACA;AACR;AAAA,EAGX;AAAA,EAdiB,WAAW;AAAA,EAEpB;AAAA,EACA;AAAA,EAER,cAAc;AAAA,EACd,kBAAkB;AAAA,EAUlB,MAAM,UAAyB;AAC7B,QAAI,KAAK,aAAa;AACpB,YAAM,IAAI,QAAQ,eAAe,iBAAiB;AAAA,IACpD;AAEA,UAAM,SAAS,IAAI,KAAK,IAAI,OAAO;AAAA,MACjC,MAAM,KAAK,OAAO;AAAA,MAClB,MAAM,KAAK,OAAO,QAAQ;AAAA,MAC1B,MAAM,KAAK,OAAO;AAAA,MAClB,UAAU,KAAK,OAAO;AAAA,MACtB,UAAU,KAAK,OAAO;AAAA,MACtB,yBAAyB;AAAA,MACzB,eAAe,KAAK;AAAA,IACtB,CAAC;AAED,WAAO,GAAG,OAAO,MAAM;AACrB,WAAK,KAAK,OAAO;AACjB,WAAK,YAAY;AAAA,IACnB,CAAC;AAED,WAAO,GAAG,SAAS,CAAC,UAAU;AAC5B,aAAO,MAAM,gCAAY,MAAM,OAAO;AAAA,IACxC,CAAC;AAED,UAAM,OAAO,QAAQ;AAErB,SAAK,UAAU;AACf,SAAK,cAAc;AACnB,SAAK,cAAc;AAAA,EACrB;AAAA,EAEA,MAAM,QAAuB;AAC3B,SAAK,aAAa;AAElB,QAAI,KAAK,WAAW,QAAQ,CAAC,KAAK,aAAa;AAC7C;AAAA,IACF;AAEA,UAAM,KAAK,QAAQ,IAAI;AAEvB,SAAK,KAAK,OAAO;AACjB,SAAK,YAAY;AAAA,EACnB;AAAA,EAEA,MAAM,iBAAiB,gBAAgD;AACrE,SAAK,iBAAiB;AAEtB,UAAM,SACJ,kBACA,KAAK,OAAO,yBACZ,oBACA,QAAQ,MAAM,GAAG;AAEnB,UAAM,KAAK,QAAS,MAAM,OAAO;AACjC,UAAM,KAAK,QAAS,MAAM,mCAAmC,KAAK,EAAE;AAEpE,SAAK,kBAAkB;AAAA,EACzB;AAAA,EAEA,MAAM,oBAAmC;AACvC,SAAK,iBAAiB;AACtB,UAAM,KAAK,QAAS,MAAM,QAAQ;AAClC,SAAK,kBAAkB;AAAA,EACzB;AAAA,EAEA,MAAM,sBAAqC;AACzC,SAAK,iBAAiB;AACtB,UAAM,KAAK,QAAS,MAAM,UAAU;AACpC,SAAK,kBAAkB;AAAA,EACzB;AAAA,EAEA,MAAM,QAAQ,SAAyD;AACrE,UAAM,UAAuC,CAAC;AAC9C,eAAW,SAAS,QAAQ,OAAO,CAAC,SAAS,CAAC,iBAAiB,IAAI,CAAC,GAAG;AACrE,YAAM,cAAc,MAAM,KAAK,oBAAoB,KAAK;AACxD,cAAQ,KAAK,GAAG,WAAW;AAAA,IAC7B;AACA,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,oBACJ,OACA,QACsC;AACtC,SAAK,iBAAiB;AAEtB,WAAO,MAAM,6BAAS,EAAE,aAAa,MAAM,QAAQ,OAAO,CAAC;AAE3D,QAAI;AACF,YAAM,SAAS,MAAM,KAAK,QAAS,MAAM,OAAO,MAAM;AAEtD,WAAK,cAAc;AAGnB,aAAO,CAAC,OAAO,IAAI;AAAA,IACrB,SAAS,KAAK;AACZ,WAAK,cAAc;AACnB,YAAM,QAAQ,eAAe,QAAQ,MAAM,IAAI,MAAM,OAAO,GAAG,CAAC;AAChE,YAAM,IAAI,QAAQ,OAAO,yEAA4B,MAAM,KAAK,IAAI,MAAM;AAAA,IAC5E;AAAA,EACF;AAAA,EAEA,MAAM,WACJ,WACA,aACA,SACe;AACf,SAAK,iBAAiB;AAEtB,QAAI,QAAQ,WAAW,EAAG;AAE1B,UAAM,WAAW,OAAO,KAAK,WAAW;AACxC,UAAM,cAAc,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,KAAK,IAAI;AAG3D,UAAM,YAAY,QAAQ,SAAS,KAAK,WAAW;AACnD,UAAM,SAAS,KAAK,QAAS,MAAM,KAAK,eAAe,KAAK,SAAS,CAAC;AAGtE,UAAM,WAAqB,CAAC;AAC5B,eAAW,UAAU,SAAS;AAC5B,YAAM,MAAM,SAAS;AAAA,QAAI,CAAC,YACxB,KAAK,cAAc,OAAO,OAAO,GAAG,YAAY,OAAO,EAAE,QAAQ;AAAA,MACnE;AACA,eAAS,KAAK,IAAI,KAAK,GAAG,CAAC;AAAA,IAC7B;AACA,UAAM,aAAa,SAAS,KAAK,IAAI,IAAI;AAGzC,UAAM,IAAI,QAAc,CAAC,SAAS,WAAW;AAC3C,YAAM,WAAW,SAAS,KAAK,CAAC,UAAU,CAAC;AAE3C,eAAS,GAAG,SAAS,MAAM;AAC3B,aAAO,GAAG,SAAS,MAAM;AACzB,aAAO,GAAG,UAAU,OAAO;AAE3B,eAAS,KAAK,MAAM;AAAA,IACtB,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASQ,cAAc,OAAgB,UAA4B;AAChE,QAAI,SAAS,MAAM;AACjB,aAAO;AAAA,IACT;AAEA,YAAQ,SAAS,MAAM;AAAA,MACrB,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACH,eAAO,OAAO,KAAK;AAAA,MAErB,KAAK;AACH,eAAQ,QAAoB,SAAS;AAAA,MAEvC,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK,QAAQ;AACX,cAAM,MAAM;AAEZ,YACE,IAAI,SAAS,GAAG,KAChB,IAAI,SAAS,GAAG,KAChB,IAAI,SAAS,IAAI,KACjB,IAAI,SAAS,IAAI,KACjB,IAAI,SAAS,IAAI,GACjB;AACA,iBAAO,MAAM,IAAI,QAAQ,MAAM,IAAI,IAAI;AAAA,QACzC;AACA,eAAO;AAAA,MACT;AAAA,MAEA,KAAK;AACH,eAAQ,MAAmB,eAAe,yBAAyB;AAAA,MAErE,KAAK;AACH,eAAQ,MAAmB,eAAe,YAAY;AAAA,MAExD,KAAK;AACH,eAAQ,MAAe,eAAe,UAAU;AAAA,MAElD,KAAK;AACH,eAAQ,MAAe,SAAS;AAAA,MAElC,KAAK;AACH,eAAO,SAAS,WAAW,KAAmB,IAAI;AAAA;AAAA,MAEpD;AACE,cAAM,IAAI,QAAQ,mDAAqB,KAAK,UAAU,QAAQ,CAAC,EAAE;AAAA,IACrE;AAAA,EACF;AAAA,EAEQ,mBAAyB;AAC/B,QAAI,KAAK,WAAW,QAAQ,CAAC,KAAK,aAAa;AAC7C,YAAM,IAAI,QAAQ,eAAe,aAAa;AAAA,IAChD;AACA,SAAK,cAAc;AAAA,EACrB;AAAA,EAEQ,cAAoB;AAC1B,SAAK,cAAc;AACnB,SAAK,kBAAkB;AACvB,SAAK,UAAU;AAAA,EACjB;AAAA,EAEQ,eAAqB;AAC3B,QAAI,KAAK,gBAAgB,MAAM;AAC7B,mBAAa,KAAK,YAAY;AAAA,IAChC;AAAA,EACF;AAAA,EAEQ,gBAAsB;AAC5B,SAAK,aAAa;AAClB,SAAK,eAAe,WAAW,MAAM;AACnC,WAAK,MAAM,EAAE,MAAM,CAAC,QAAQ;AAC1B,eAAO,MAAM,eAAe,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG,CAAC;AAAA,MAC9E,CAAC;AAAA,IACH,GAAG,KAAK,WAAW,CAAC;AAAA,EACtB;AACF;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,12 +1,12 @@
1
1
  import type { DbConn, DbConnConfig } from "./types/db-conn";
2
2
  /**
3
- * DB 연결 생성
3
+ * Create DB connection
4
4
  *
5
- * 커넥션 풀에서 연결을 획득하여 반환한다.
6
- * 풀이 없는 경우 새로 생성한다.
5
+ * Acquires and returns a connection from the connection pool.
6
+ * Creates a new pool if one does not exist.
7
7
  *
8
- * @param config - 데이터베이스 연결 설정
9
- * @returns 풀링된 DB 연결 객체
8
+ * @param config - Database connection configuration
9
+ * @returns Pooled DB connection object
10
10
  */
11
11
  export declare function createDbConn(config: DbConnConfig): Promise<DbConn>;
12
12
  //# sourceMappingURL=create-db-conn.d.ts.map
@@ -36,7 +36,7 @@ function getOrCreatePool(config) {
36
36
  acquireTimeoutMillis: config.pool?.acquireTimeoutMillis ?? 3e4,
37
37
  idleTimeoutMillis: config.pool?.idleTimeoutMillis ?? 3e4,
38
38
  testOnBorrow: true
39
- // [중요] 빌려줄 validate 실행 여부
39
+ // [IMPORTANT] Whether to run validate when borrowing
40
40
  }
41
41
  );
42
42
  pool.on("factoryCreateError", (err) => {
@@ -1,50 +1,50 @@
1
1
  import { type DbContextDef, type DbContextInstance, type IsolationLevel } from "@simplysm/orm-common";
2
2
  import type { DbConnConfig } from "./types/db-conn";
3
3
  /**
4
- * Orm 옵션
4
+ * ORM options
5
5
  *
6
- * DbConnConfig보다 우선 적용되는 DbContext 옵션
6
+ * DbContext options that take precedence over DbConnConfig
7
7
  */
8
8
  export interface OrmOptions {
9
9
  /**
10
- * 데이터베이스 이름 (DbConnConfig database 대신 사용)
10
+ * Database name (used instead of DbConnConfig's database)
11
11
  */
12
12
  database?: string;
13
13
  /**
14
- * 스키마 이름 (MSSQL: dbo, PostgreSQL: public)
14
+ * Schema name (MSSQL: dbo, PostgreSQL: public)
15
15
  */
16
16
  schema?: string;
17
17
  }
18
18
  /**
19
- * Orm 인스턴스 타입
19
+ * ORM instance type
20
20
  *
21
- * createOrm에서 반환되는 객체의 타입
21
+ * Type of the object returned from createOrm
22
22
  */
23
23
  export interface Orm<TDef extends DbContextDef<any, any, any>> {
24
24
  readonly dbContextDef: TDef;
25
25
  readonly config: DbConnConfig;
26
26
  readonly options?: OrmOptions;
27
27
  /**
28
- * 트랜잭션 내에서 콜백 실행
28
+ * Execute callback within a transaction
29
29
  *
30
- * @param callback - DB 연결 실행할 콜백
31
- * @param isolationLevel - 트랜잭션 격리 수준
32
- * @returns 콜백 결과
30
+ * @param callback - Callback to execute after DB connection
31
+ * @param isolationLevel - Transaction isolation level
32
+ * @returns Callback result
33
33
  */
34
34
  connect<R>(callback: (conn: DbContextInstance<TDef>) => Promise<R>, isolationLevel?: IsolationLevel): Promise<R>;
35
35
  /**
36
- * 트랜잭션 없이 콜백 실행
36
+ * Execute callback without a transaction
37
37
  *
38
- * @param callback - DB 연결 실행할 콜백
39
- * @returns 콜백 결과
38
+ * @param callback - Callback to execute after DB connection
39
+ * @returns Callback result
40
40
  */
41
41
  connectWithoutTransaction<R>(callback: (conn: DbContextInstance<TDef>) => Promise<R>): Promise<R>;
42
42
  }
43
43
  /**
44
- * Node.js ORM 팩토리 함수
44
+ * Node.js ORM factory function
45
45
  *
46
- * DbContext와 DB 연결을 관리하는 인스턴스를 생성합니다.
47
- * DbContext 정의와 연결 설정을 받아 트랜잭션을 관리합니다.
46
+ * Creates an instance that manages DbContext and DB connections.
47
+ * Receives DbContext definition and connection configuration to manage transactions.
48
48
  *
49
49
  * @example
50
50
  * ```typescript
@@ -61,13 +61,13 @@ export interface Orm<TDef extends DbContextDef<any, any, any>> {
61
61
  * database: "mydb",
62
62
  * });
63
63
  *
64
- * // 트랜잭션 내에서 실행
64
+ * // Execute within a transaction
65
65
  * await orm.connect(async (db) => {
66
66
  * const users = await db.user().result();
67
67
  * return users;
68
68
  * });
69
69
  *
70
- * // 트랜잭션 없이 실행
70
+ * // Execute without a transaction
71
71
  * await orm.connectWithoutTransaction(async (db) => {
72
72
  * const users = await db.user().result();
73
73
  * return users;
@@ -1,9 +1,9 @@
1
1
  import type { DbContextExecutor, IsolationLevel, QueryDef, ResultMeta, ColumnMeta, DataRecord } from "@simplysm/orm-common";
2
2
  import type { DbConnConfig } from "./types/db-conn";
3
3
  /**
4
- * Node.js 환경용 DbContextExecutor
4
+ * DbContextExecutor for Node.js environment
5
5
  *
6
- * DbContext에서 사용하는 실행기로, 실제 DB 연결을 담당한다.
6
+ * Executor used by DbContext that handles actual DB connections.
7
7
  */
8
8
  export declare class NodeDbContextExecutor implements DbContextExecutor {
9
9
  private readonly _config;
@@ -11,65 +11,65 @@ export declare class NodeDbContextExecutor implements DbContextExecutor {
11
11
  private readonly _dialect;
12
12
  constructor(_config: DbConnConfig);
13
13
  /**
14
- * DB 연결 수립
14
+ * Establish DB connection
15
15
  *
16
- * 커넥션 풀에서 연결을 획득하고 연결 상태를 활성화한다.
16
+ * Acquires connection from connection pool and activates the connection state.
17
17
  */
18
18
  connect(): Promise<void>;
19
19
  /**
20
- * DB 연결 종료
20
+ * Close DB connection
21
21
  *
22
- * 커넥션 풀에 연결을 반환한다.
22
+ * Returns connection to the connection pool.
23
23
  *
24
- * @throws {Error} 연결되지 않은 상태일 때
24
+ * @throws {Error} When not connected
25
25
  */
26
26
  close(): Promise<void>;
27
27
  /**
28
- * 트랜잭션 시작
28
+ * Begin transaction
29
29
  *
30
- * @param isolationLevel - 트랜잭션 격리 수준
31
- * @throws {Error} 연결되지 않은 상태일 때
30
+ * @param isolationLevel - Transaction isolation level
31
+ * @throws {Error} When not connected
32
32
  */
33
33
  beginTransaction(isolationLevel?: IsolationLevel): Promise<void>;
34
34
  /**
35
- * 트랜잭션 커밋
35
+ * Commit transaction
36
36
  *
37
- * @throws {Error} 연결되지 않은 상태일 때
37
+ * @throws {Error} When not connected
38
38
  */
39
39
  commitTransaction(): Promise<void>;
40
40
  /**
41
- * 트랜잭션 롤백
41
+ * Rollback transaction
42
42
  *
43
- * @throws {Error} 연결되지 않은 상태일 때
43
+ * @throws {Error} When not connected
44
44
  */
45
45
  rollbackTransaction(): Promise<void>;
46
46
  /**
47
- * 파라미터화된 쿼리 실행
47
+ * Execute parameterized query
48
48
  *
49
- * @param query - SQL 쿼리 문자열
50
- * @param params - 쿼리 파라미터 배열
51
- * @returns 쿼리 결과 배열
52
- * @throws {Error} 연결되지 않은 상태일 때
49
+ * @param query - SQL query string
50
+ * @param params - Query parameter array
51
+ * @returns Query result array
52
+ * @throws {Error} When not connected
53
53
  */
54
54
  executeParametrized(query: string, params?: unknown[]): Promise<Record<string, unknown>[][]>;
55
55
  /**
56
- * 대량 데이터 삽입 (네이티브 벌크 API 사용)
56
+ * Bulk insert data (using native bulk API)
57
57
  *
58
- * @param tableName - 대상 테이블명
59
- * @param columnMetas - 컬럼 메타데이터
60
- * @param records - 삽입할 레코드 배열
61
- * @throws {Error} 연결되지 않은 상태일 때
58
+ * @param tableName - Target table name
59
+ * @param columnMetas - Column metadata
60
+ * @param records - Record array to insert
61
+ * @throws {Error} When not connected
62
62
  */
63
63
  bulkInsert(tableName: string, columnMetas: Record<string, ColumnMeta>, records: DataRecord[]): Promise<void>;
64
64
  /**
65
- * QueryDef 배열 실행
65
+ * Execute QueryDef array
66
66
  *
67
- * QueryDef SQL 변환하여 실행하고, ResultMeta를 사용하여 결과를 파싱한다.
67
+ * Converts QueryDef to SQL and executes, parses results using ResultMeta.
68
68
  *
69
- * @param defs - 실행할 QueryDef 배열
70
- * @param resultMetas - 결과 파싱용 메타데이터 배열 (타입 변환에 사용)
71
- * @returns QueryDef의 실행 결과 배열
72
- * @throws {Error} 연결되지 않은 상태일 때
69
+ * @param defs - QueryDef array to execute
70
+ * @param resultMetas - Result parsing metadata array (used for type conversion)
71
+ * @returns Array of execution results for each QueryDef
72
+ * @throws {Error} When not connected
73
73
  */
74
74
  executeDefs<T = DataRecord>(defs: QueryDef[], resultMetas?: (ResultMeta | undefined)[]): Promise<T[][]>;
75
75
  private _requireConn;
@@ -10,20 +10,20 @@ class NodeDbContextExecutor {
10
10
  _conn;
11
11
  _dialect;
12
12
  /**
13
- * DB 연결 수립
13
+ * Establish DB connection
14
14
  *
15
- * 커넥션 풀에서 연결을 획득하고 연결 상태를 활성화한다.
15
+ * Acquires connection from connection pool and activates the connection state.
16
16
  */
17
17
  async connect() {
18
18
  this._conn = await createDbConn(this._config);
19
19
  await this._conn.connect();
20
20
  }
21
21
  /**
22
- * DB 연결 종료
22
+ * Close DB connection
23
23
  *
24
- * 커넥션 풀에 연결을 반환한다.
24
+ * Returns connection to the connection pool.
25
25
  *
26
- * @throws {Error} 연결되지 않은 상태일 때
26
+ * @throws {Error} When not connected
27
27
  */
28
28
  async close() {
29
29
  const conn = this._requireConn();
@@ -31,66 +31,66 @@ class NodeDbContextExecutor {
31
31
  this._conn = void 0;
32
32
  }
33
33
  /**
34
- * 트랜잭션 시작
34
+ * Begin transaction
35
35
  *
36
- * @param isolationLevel - 트랜잭션 격리 수준
37
- * @throws {Error} 연결되지 않은 상태일 때
36
+ * @param isolationLevel - Transaction isolation level
37
+ * @throws {Error} When not connected
38
38
  */
39
39
  async beginTransaction(isolationLevel) {
40
40
  const conn = this._requireConn();
41
41
  await conn.beginTransaction(isolationLevel);
42
42
  }
43
43
  /**
44
- * 트랜잭션 커밋
44
+ * Commit transaction
45
45
  *
46
- * @throws {Error} 연결되지 않은 상태일 때
46
+ * @throws {Error} When not connected
47
47
  */
48
48
  async commitTransaction() {
49
49
  const conn = this._requireConn();
50
50
  await conn.commitTransaction();
51
51
  }
52
52
  /**
53
- * 트랜잭션 롤백
53
+ * Rollback transaction
54
54
  *
55
- * @throws {Error} 연결되지 않은 상태일 때
55
+ * @throws {Error} When not connected
56
56
  */
57
57
  async rollbackTransaction() {
58
58
  const conn = this._requireConn();
59
59
  await conn.rollbackTransaction();
60
60
  }
61
61
  /**
62
- * 파라미터화된 쿼리 실행
62
+ * Execute parameterized query
63
63
  *
64
- * @param query - SQL 쿼리 문자열
65
- * @param params - 쿼리 파라미터 배열
66
- * @returns 쿼리 결과 배열
67
- * @throws {Error} 연결되지 않은 상태일 때
64
+ * @param query - SQL query string
65
+ * @param params - Query parameter array
66
+ * @returns Query result array
67
+ * @throws {Error} When not connected
68
68
  */
69
69
  async executeParametrized(query, params) {
70
70
  const conn = this._requireConn();
71
71
  return conn.executeParametrized(query, params);
72
72
  }
73
73
  /**
74
- * 대량 데이터 삽입 (네이티브 벌크 API 사용)
74
+ * Bulk insert data (using native bulk API)
75
75
  *
76
- * @param tableName - 대상 테이블명
77
- * @param columnMetas - 컬럼 메타데이터
78
- * @param records - 삽입할 레코드 배열
79
- * @throws {Error} 연결되지 않은 상태일 때
76
+ * @param tableName - Target table name
77
+ * @param columnMetas - Column metadata
78
+ * @param records - Record array to insert
79
+ * @throws {Error} When not connected
80
80
  */
81
81
  async bulkInsert(tableName, columnMetas, records) {
82
82
  const conn = this._requireConn();
83
83
  await conn.bulkInsert(tableName, columnMetas, records);
84
84
  }
85
85
  /**
86
- * QueryDef 배열 실행
86
+ * Execute QueryDef array
87
87
  *
88
- * QueryDef SQL 변환하여 실행하고, ResultMeta를 사용하여 결과를 파싱한다.
88
+ * Converts QueryDef to SQL and executes, parses results using ResultMeta.
89
89
  *
90
- * @param defs - 실행할 QueryDef 배열
91
- * @param resultMetas - 결과 파싱용 메타데이터 배열 (타입 변환에 사용)
92
- * @returns QueryDef의 실행 결과 배열
93
- * @throws {Error} 연결되지 않은 상태일 때
90
+ * @param defs - QueryDef array to execute
91
+ * @param resultMetas - Result parsing metadata array (used for type conversion)
92
+ * @returns Array of execution results for each QueryDef
93
+ * @throws {Error} When not connected
94
94
  */
95
95
  async executeDefs(defs, resultMetas) {
96
96
  const conn = this._requireConn();