@pma-network/sql 1.0.7 → 1.0.9
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 +68 -22
- package/dist/MySQL.d.ts +86 -21
- package/dist/MySQL.d.ts.map +1 -1
- package/dist/MySQL.js +154 -68
- package/dist/MySQL.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -44,12 +44,17 @@ Import and use:
|
|
|
44
44
|
```typescript
|
|
45
45
|
import db from '@pma-network/sql';
|
|
46
46
|
|
|
47
|
-
const users = await db.query('SELECT * FROM users WHERE
|
|
48
|
-
const insertId = await db.insert(
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
47
|
+
const users = await db.query('SELECT * FROM users WHERE job_name = :job', { job: 'police' });
|
|
48
|
+
const insertId = await db.insert(
|
|
49
|
+
'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (:identifier_id, :char_data_id, :first_name, :last_name, :inventory_id)',
|
|
50
|
+
{
|
|
51
|
+
identifier_id: 1,
|
|
52
|
+
char_data_id: 1,
|
|
53
|
+
first_name: 'John',
|
|
54
|
+
last_name: 'Doe',
|
|
55
|
+
inventory_id: 1
|
|
56
|
+
}
|
|
57
|
+
);
|
|
53
58
|
```
|
|
54
59
|
|
|
55
60
|
## Usage
|
|
@@ -97,15 +102,31 @@ Optional: password, port (default: 3306)
|
|
|
97
102
|
|
|
98
103
|
Named parameters:
|
|
99
104
|
```typescript
|
|
100
|
-
await db.query('SELECT * FROM users WHERE
|
|
101
|
-
|
|
102
|
-
|
|
105
|
+
await db.query('SELECT * FROM users WHERE first_name = :first_name AND job_name = :job', {
|
|
106
|
+
first_name: 'John',
|
|
107
|
+
job: 'police',
|
|
103
108
|
});
|
|
104
109
|
```
|
|
105
110
|
|
|
106
111
|
Positional parameters:
|
|
107
112
|
```typescript
|
|
108
|
-
await db.query('SELECT * FROM users WHERE
|
|
113
|
+
await db.query('SELECT * FROM users WHERE first_name = ? AND job_name = ?', ['John', 'police']);
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Raw queries (no parameter processing - no named params, no @ conversion, no undefined->null):
|
|
117
|
+
```typescript
|
|
118
|
+
// Use raw methods when you need direct control
|
|
119
|
+
const users = await db.rawQuery('SELECT * FROM users WHERE uid = ?', [1]);
|
|
120
|
+
const insertId = await db.rawInsert(
|
|
121
|
+
'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (?, ?, ?, ?, ?)',
|
|
122
|
+
[1, 1, 'John', 'Doe', 1]
|
|
123
|
+
);
|
|
124
|
+
|
|
125
|
+
// Regular methods process parameters automatically:
|
|
126
|
+
// - Convert @ to :
|
|
127
|
+
// - Support named parameters (:name)
|
|
128
|
+
// - Convert undefined to null
|
|
129
|
+
const users2 = await db.query('SELECT * FROM users WHERE uid = :uid', { uid: 1 });
|
|
109
130
|
```
|
|
110
131
|
|
|
111
132
|
TypeScript with type definitions:
|
|
@@ -113,21 +134,37 @@ TypeScript with type definitions:
|
|
|
113
134
|
import db from '@pma-network/sql';
|
|
114
135
|
|
|
115
136
|
interface User {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
137
|
+
uid: number;
|
|
138
|
+
identifier_id: number;
|
|
139
|
+
bank: number;
|
|
140
|
+
char_data_id: number;
|
|
141
|
+
first_name: string;
|
|
142
|
+
last_name: string;
|
|
143
|
+
job_name: string;
|
|
144
|
+
job_rank: number;
|
|
145
|
+
slot_id: number | null;
|
|
146
|
+
model: string | null;
|
|
147
|
+
inventory_id: number;
|
|
148
|
+
x: number;
|
|
149
|
+
y: number;
|
|
150
|
+
z: number;
|
|
151
|
+
is_deleted: boolean | null;
|
|
119
152
|
}
|
|
120
153
|
|
|
121
|
-
const users = await db.query<User[]>('SELECT * FROM users');
|
|
122
|
-
const user = await db.single<User>('SELECT * FROM users WHERE
|
|
154
|
+
const users = await db.query<User[]>('SELECT * FROM users WHERE job_name = :job', { job: 'police' });
|
|
155
|
+
const user = await db.single<User>('SELECT * FROM users WHERE uid = :uid', { uid: 1 });
|
|
123
156
|
```
|
|
124
157
|
|
|
125
158
|
Transactions with success/failure:
|
|
126
159
|
```typescript
|
|
127
160
|
const { success, result, error } = await db.transaction(async (execute) => {
|
|
128
|
-
await execute('
|
|
129
|
-
await execute('UPDATE users SET
|
|
130
|
-
|
|
161
|
+
await execute('UPDATE users SET bank = bank + :amount WHERE uid = :uid', { amount: 1000, uid: 1 });
|
|
162
|
+
await execute('UPDATE users SET job_name = :job, job_rank = :rank WHERE uid = :uid', {
|
|
163
|
+
job: 'police',
|
|
164
|
+
rank: 1,
|
|
165
|
+
uid: 1
|
|
166
|
+
});
|
|
167
|
+
return { uid: 1 };
|
|
131
168
|
});
|
|
132
169
|
|
|
133
170
|
if (success) {
|
|
@@ -140,12 +177,21 @@ if (success) {
|
|
|
140
177
|
Batch operations for bulk inserts/updates:
|
|
141
178
|
```typescript
|
|
142
179
|
const { success, result } = await db.batch([
|
|
143
|
-
{
|
|
144
|
-
|
|
145
|
-
|
|
180
|
+
{
|
|
181
|
+
query: 'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (:identifier_id, :char_data_id, :first_name, :last_name, :inventory_id)',
|
|
182
|
+
parameters: { identifier_id: 1, char_data_id: 1, first_name: 'John', last_name: 'Doe', inventory_id: 1 }
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
query: 'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (:identifier_id, :char_data_id, :first_name, :last_name, :inventory_id)',
|
|
186
|
+
parameters: { identifier_id: 2, char_data_id: 2, first_name: 'Jane', last_name: 'Smith', inventory_id: 2 }
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
query: 'UPDATE users SET job_name = :job WHERE uid = :uid',
|
|
190
|
+
parameters: { job: 'police', uid: 1 }
|
|
191
|
+
}
|
|
146
192
|
]);
|
|
147
193
|
|
|
148
194
|
if (success) {
|
|
149
|
-
console.log(`
|
|
195
|
+
console.log(`Executed ${result.length} queries`);
|
|
150
196
|
}
|
|
151
197
|
```
|
package/dist/MySQL.d.ts
CHANGED
|
@@ -14,7 +14,6 @@ export declare class MySQL {
|
|
|
14
14
|
private versionPrefix;
|
|
15
15
|
private metricsExportResource;
|
|
16
16
|
private metricsExportFunction;
|
|
17
|
-
private poolReady;
|
|
18
17
|
/**
|
|
19
18
|
* Creates a new MySQL instance with connection pooling.
|
|
20
19
|
* If no config is provided, it will automatically look for connection strings in environment variables.
|
|
@@ -23,6 +22,7 @@ export declare class MySQL {
|
|
|
23
22
|
* @throws {Error} If no connection string is found or if connection string validation fails
|
|
24
23
|
*/
|
|
25
24
|
constructor(config?: ConnectionConfig);
|
|
25
|
+
private fetchServerVersion;
|
|
26
26
|
private getConvar;
|
|
27
27
|
private getConvarInt;
|
|
28
28
|
private getConvarBool;
|
|
@@ -75,61 +75,124 @@ export declare class MySQL {
|
|
|
75
75
|
private processParameters;
|
|
76
76
|
private logQuery;
|
|
77
77
|
private handleError;
|
|
78
|
+
/**
|
|
79
|
+
* Executes a SQL query with raw positional parameters.
|
|
80
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
81
|
+
* Use ? placeholders only.
|
|
82
|
+
*
|
|
83
|
+
* @param query - SQL query with ? placeholders only
|
|
84
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
85
|
+
* @returns Query result
|
|
86
|
+
* @example
|
|
87
|
+
* const result = await db.rawExecute('SELECT * FROM users WHERE uid = ?', [1]);
|
|
88
|
+
*/
|
|
89
|
+
rawExecute<T = unknown>(query: string, parameters?: unknown[]): Promise<T | null>;
|
|
78
90
|
/**
|
|
79
91
|
* Executes a SQL query and returns the raw results.
|
|
80
92
|
* Supports SELECT, INSERT, UPDATE, DELETE, and other SQL statements.
|
|
93
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
81
94
|
*
|
|
82
95
|
* @param query - SQL query with :name or ? placeholders
|
|
83
96
|
* @param parameters - Parameter values as object or array
|
|
84
97
|
* @returns Query result
|
|
85
98
|
* @example
|
|
86
|
-
* const result = await db.execute('SELECT * FROM users WHERE
|
|
99
|
+
* const result = await db.execute('SELECT * FROM users WHERE uid = :uid', { uid: 1 });
|
|
87
100
|
*/
|
|
88
101
|
execute<T = unknown>(query: string, parameters?: QueryParameters): Promise<T | null>;
|
|
102
|
+
/**
|
|
103
|
+
* Executes a SELECT query with raw positional parameters.
|
|
104
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
105
|
+
* Use ? placeholders only.
|
|
106
|
+
*
|
|
107
|
+
* @param query - SELECT query with ? placeholders only
|
|
108
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
109
|
+
* @returns Array of rows
|
|
110
|
+
* @example
|
|
111
|
+
* const users = await db.rawQuery('SELECT * FROM users WHERE job_name = ?', ['police']);
|
|
112
|
+
*/
|
|
113
|
+
rawQuery<T = RowDataPacket[]>(query: string, parameters?: unknown[]): Promise<T | null>;
|
|
89
114
|
/**
|
|
90
115
|
* Executes a SELECT query and returns rows.
|
|
91
116
|
* Use for queries returning multiple rows.
|
|
117
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
92
118
|
*
|
|
93
119
|
* @param query - SELECT query with :name or ? placeholders
|
|
94
120
|
* @param parameters - Parameter values
|
|
95
121
|
* @returns Array of rows
|
|
96
122
|
* @example
|
|
97
|
-
* const users = await db.query('SELECT * FROM users WHERE
|
|
123
|
+
* const users = await db.query('SELECT * FROM users WHERE job_name = :job', { job: 'police' });
|
|
98
124
|
*/
|
|
99
125
|
query<T = RowDataPacket[]>(query: string, parameters?: QueryParameters): Promise<T | null>;
|
|
126
|
+
/**
|
|
127
|
+
* Inserts a row with raw positional parameters.
|
|
128
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
129
|
+
* Returns the auto-generated ID.
|
|
130
|
+
*
|
|
131
|
+
* @param query - INSERT query with ? placeholders only
|
|
132
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
133
|
+
* @returns Insert ID or null on error
|
|
134
|
+
* @example
|
|
135
|
+
* const insertId = await db.rawInsert('INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (?, ?, ?, ?, ?)', [1, 1, 'John', 'Doe', 1]);
|
|
136
|
+
*/
|
|
137
|
+
rawInsert(query: string, parameters?: unknown[]): Promise<number | null>;
|
|
100
138
|
/**
|
|
101
139
|
* Inserts a row into the database.
|
|
102
140
|
* Returns the auto-generated ID.
|
|
141
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
103
142
|
*
|
|
104
143
|
* @param query - INSERT query with :name or ? placeholders
|
|
105
144
|
* @param parameters - Values to insert
|
|
106
145
|
* @returns Insert ID or null on error
|
|
107
146
|
* @example
|
|
108
147
|
* const insertId = await db.insert(
|
|
109
|
-
* 'INSERT INTO users (
|
|
110
|
-
* {
|
|
148
|
+
* 'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (:identifier_id, :char_data_id, :first_name, :last_name, :inventory_id)',
|
|
149
|
+
* { identifier_id: 1, char_data_id: 1, first_name: 'John', last_name: 'Doe', inventory_id: 1 }
|
|
111
150
|
* );
|
|
112
|
-
* console.log(insertId);
|
|
113
151
|
*/
|
|
114
152
|
insert(query: string, parameters?: QueryParameters): Promise<number | null>;
|
|
153
|
+
/**
|
|
154
|
+
* Updates rows with raw positional parameters.
|
|
155
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
156
|
+
* Returns the number of affected rows.
|
|
157
|
+
*
|
|
158
|
+
* @param query - UPDATE query with ? placeholders only
|
|
159
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
160
|
+
* @returns Number of affected rows or null on error
|
|
161
|
+
* @example
|
|
162
|
+
* const affectedRows = await db.rawUpdate('UPDATE users SET job_name = ?, job_rank = ? WHERE uid = ?', ['police', 1, 123]);
|
|
163
|
+
*/
|
|
164
|
+
rawUpdate(query: string, parameters?: unknown[]): Promise<number | null>;
|
|
115
165
|
/**
|
|
116
166
|
* Updates rows in the database.
|
|
117
167
|
* Returns the number of affected rows.
|
|
168
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
118
169
|
*
|
|
119
170
|
* @param query - UPDATE query with :name or ? placeholders
|
|
120
171
|
* @param parameters - Values to update
|
|
121
172
|
* @returns Number of affected rows or null on error
|
|
122
173
|
* @example
|
|
123
174
|
* const affectedRows = await db.update(
|
|
124
|
-
* 'UPDATE users SET
|
|
125
|
-
* {
|
|
175
|
+
* 'UPDATE users SET job_name = :job, job_rank = :rank WHERE uid = :uid',
|
|
176
|
+
* { job: 'police', rank: 1, uid: 123 }
|
|
126
177
|
* );
|
|
127
|
-
* console.log(affectedRows);
|
|
128
178
|
*/
|
|
129
179
|
update(query: string, parameters?: QueryParameters): Promise<number | null>;
|
|
180
|
+
/**
|
|
181
|
+
* Returns a single value with raw positional parameters.
|
|
182
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
183
|
+
* Use for COUNT, SUM, or single column queries.
|
|
184
|
+
*
|
|
185
|
+
* @param query - SELECT query with ? placeholders only, returning one column
|
|
186
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
187
|
+
* @returns Value from first column of first row, or null
|
|
188
|
+
* @example
|
|
189
|
+
* const count = await db.rawScalar('SELECT COUNT(*) FROM users WHERE age > ?', [18]);
|
|
190
|
+
*/
|
|
191
|
+
rawScalar<T = unknown>(query: string, parameters?: unknown[]): Promise<T | null>;
|
|
130
192
|
/**
|
|
131
193
|
* Returns a single value from the database.
|
|
132
194
|
* Use for COUNT, SUM, or single column queries.
|
|
195
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
133
196
|
*
|
|
134
197
|
* @param query - SELECT query returning one column
|
|
135
198
|
* @param parameters - Parameter values
|
|
@@ -139,9 +202,22 @@ export declare class MySQL {
|
|
|
139
202
|
* const name = await db.scalar('SELECT name FROM users WHERE id = :id', { id: 1 });
|
|
140
203
|
*/
|
|
141
204
|
scalar<T = unknown>(query: string, parameters?: QueryParameters): Promise<T | null>;
|
|
205
|
+
/**
|
|
206
|
+
* Returns a single row with raw positional parameters.
|
|
207
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
208
|
+
* Returns null if no rows match.
|
|
209
|
+
*
|
|
210
|
+
* @param query - SELECT query with ? placeholders only
|
|
211
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
212
|
+
* @returns Single row or null
|
|
213
|
+
* @example
|
|
214
|
+
* const user = await db.rawSingle('SELECT * FROM users WHERE id = ?', [1]);
|
|
215
|
+
*/
|
|
216
|
+
rawSingle<T = RowDataPacket>(query: string, parameters?: unknown[]): Promise<T | null>;
|
|
142
217
|
/**
|
|
143
218
|
* Returns a single row from the database.
|
|
144
219
|
* Returns null if no rows match.
|
|
220
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
145
221
|
*
|
|
146
222
|
* @param query - SELECT query with :name or ? placeholders
|
|
147
223
|
* @param parameters - Parameter values
|
|
@@ -167,17 +243,6 @@ export declare class MySQL {
|
|
|
167
243
|
* });
|
|
168
244
|
*/
|
|
169
245
|
transaction<T = unknown>(callback: TransactionCallback): Promise<TransactionResult<T>>;
|
|
170
|
-
/**
|
|
171
|
-
* Executes a query with positional parameters.
|
|
172
|
-
* Skips named parameter processing. Use ? placeholders only.
|
|
173
|
-
*
|
|
174
|
-
* @param query - SQL query with ? placeholders
|
|
175
|
-
* @param parameters - Array of values for placeholders
|
|
176
|
-
* @returns Query result
|
|
177
|
-
* @example
|
|
178
|
-
* const result = await db.rawExecute('SELECT * FROM users WHERE id = ?', [1]);
|
|
179
|
-
*/
|
|
180
|
-
rawExecute<T = unknown>(query: string, parameters?: unknown[]): Promise<T | null>;
|
|
181
246
|
/**
|
|
182
247
|
* Executes multiple queries in a batch within a transaction.
|
|
183
248
|
* All queries are executed atomically - either all succeed or all are rolled back.
|
|
@@ -195,7 +260,7 @@ export declare class MySQL {
|
|
|
195
260
|
* console.log(`Executed ${result.length} queries`);
|
|
196
261
|
* }
|
|
197
262
|
*/
|
|
198
|
-
batch(queries: BatchQuery[]): Promise<TransactionResult<
|
|
263
|
+
batch<T = unknown>(queries: BatchQuery[]): Promise<TransactionResult<T[]>>;
|
|
199
264
|
/**
|
|
200
265
|
* Returns a connection from the pool.
|
|
201
266
|
* Must call connection.release() when finished.
|
package/dist/MySQL.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MySQL.d.ts","sourceRoot":"","sources":["../src/MySQL.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EAGd,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAEhB,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,yBAAyB,CAA0E;IAC3G,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,cAAc,CAAU;IAChC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,qBAAqB,CAAgB;IAC7C,OAAO,CAAC,qBAAqB,CAAgB;
|
|
1
|
+
{"version":3,"file":"MySQL.d.ts","sourceRoot":"","sources":["../src/MySQL.ts"],"names":[],"mappings":"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"}
|
package/dist/MySQL.js
CHANGED
|
@@ -15,7 +15,6 @@ export class MySQL {
|
|
|
15
15
|
versionPrefix = '';
|
|
16
16
|
metricsExportResource;
|
|
17
17
|
metricsExportFunction;
|
|
18
|
-
poolReady;
|
|
19
18
|
/**
|
|
20
19
|
* Creates a new MySQL instance with connection pooling.
|
|
21
20
|
* If no config is provided, it will automatically look for connection strings in environment variables.
|
|
@@ -39,17 +38,29 @@ export class MySQL {
|
|
|
39
38
|
waitForConnections: true,
|
|
40
39
|
connectionLimit: 10,
|
|
41
40
|
queueLimit: 0,
|
|
41
|
+
idleTimeout: 300_000,
|
|
42
42
|
...poolConfig,
|
|
43
43
|
});
|
|
44
44
|
this.namedPlaceholdersCompiler = namedPlaceholders();
|
|
45
|
-
this.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
45
|
+
this.fetchServerVersion();
|
|
46
|
+
}
|
|
47
|
+
async fetchServerVersion() {
|
|
48
|
+
try {
|
|
49
|
+
const connection = await this.pool.getConnection();
|
|
50
|
+
try {
|
|
51
|
+
const serverVersion = connection.connection?._handshakePacket?.serverVersion;
|
|
52
|
+
if (serverVersion) {
|
|
53
|
+
this.versionPrefix = `^4[${serverVersion}]^0 `;
|
|
54
|
+
}
|
|
49
55
|
}
|
|
50
|
-
|
|
51
|
-
|
|
56
|
+
finally {
|
|
57
|
+
connection.release();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch { }
|
|
52
61
|
}
|
|
62
|
+
// This wrapper is meant to be usable for our Node.js code since it has way better
|
|
63
|
+
// ergonmoics, so we have to test that GetConvar exists before trying to do anything else
|
|
53
64
|
getConvar(varName) {
|
|
54
65
|
if (typeof globalThis.GetConvar === 'function') {
|
|
55
66
|
return globalThis.GetConvar(varName, '') || null;
|
|
@@ -214,7 +225,6 @@ export class MySQL {
|
|
|
214
225
|
}
|
|
215
226
|
}
|
|
216
227
|
async executeWithTiming(processedQuery, processedParams, executor) {
|
|
217
|
-
await this.poolReady;
|
|
218
228
|
const startTime = performance.now();
|
|
219
229
|
try {
|
|
220
230
|
const result = await executor();
|
|
@@ -266,7 +276,7 @@ export class MySQL {
|
|
|
266
276
|
}
|
|
267
277
|
}
|
|
268
278
|
async executeTransaction(callback) {
|
|
269
|
-
|
|
279
|
+
this.scheduleResourceTick();
|
|
270
280
|
const connection = await this.pool.getConnection();
|
|
271
281
|
try {
|
|
272
282
|
await connection.beginTransaction();
|
|
@@ -333,87 +343,176 @@ export class MySQL {
|
|
|
333
343
|
throw error;
|
|
334
344
|
}
|
|
335
345
|
}
|
|
346
|
+
/**
|
|
347
|
+
* Executes a SQL query with raw positional parameters.
|
|
348
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
349
|
+
* Use ? placeholders only.
|
|
350
|
+
*
|
|
351
|
+
* @param query - SQL query with ? placeholders only
|
|
352
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
353
|
+
* @returns Query result
|
|
354
|
+
* @example
|
|
355
|
+
* const result = await db.rawExecute('SELECT * FROM users WHERE uid = ?', [1]);
|
|
356
|
+
*/
|
|
357
|
+
async rawExecute(query, parameters) {
|
|
358
|
+
this.scheduleResourceTick();
|
|
359
|
+
const params = parameters || [];
|
|
360
|
+
return this.executeWithTiming(query, params, async () => {
|
|
361
|
+
const [results] = await this.pool.execute(query, params);
|
|
362
|
+
return results;
|
|
363
|
+
});
|
|
364
|
+
}
|
|
336
365
|
/**
|
|
337
366
|
* Executes a SQL query and returns the raw results.
|
|
338
367
|
* Supports SELECT, INSERT, UPDATE, DELETE, and other SQL statements.
|
|
368
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
339
369
|
*
|
|
340
370
|
* @param query - SQL query with :name or ? placeholders
|
|
341
371
|
* @param parameters - Parameter values as object or array
|
|
342
372
|
* @returns Query result
|
|
343
373
|
* @example
|
|
344
|
-
* const result = await db.execute('SELECT * FROM users WHERE
|
|
374
|
+
* const result = await db.execute('SELECT * FROM users WHERE uid = :uid', { uid: 1 });
|
|
345
375
|
*/
|
|
346
376
|
async execute(query, parameters) {
|
|
347
|
-
this.scheduleResourceTick();
|
|
348
377
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
349
|
-
return this.
|
|
350
|
-
|
|
351
|
-
|
|
378
|
+
return this.rawExecute(processedQuery, processedParams);
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Executes a SELECT query with raw positional parameters.
|
|
382
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
383
|
+
* Use ? placeholders only.
|
|
384
|
+
*
|
|
385
|
+
* @param query - SELECT query with ? placeholders only
|
|
386
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
387
|
+
* @returns Array of rows
|
|
388
|
+
* @example
|
|
389
|
+
* const users = await db.rawQuery('SELECT * FROM users WHERE job_name = ?', ['police']);
|
|
390
|
+
*/
|
|
391
|
+
async rawQuery(query, parameters) {
|
|
392
|
+
this.scheduleResourceTick();
|
|
393
|
+
const params = parameters || [];
|
|
394
|
+
return this.executeWithTiming(query, params, async () => {
|
|
395
|
+
const [rows] = await this.pool.query(query, params);
|
|
396
|
+
return rows;
|
|
352
397
|
});
|
|
353
398
|
}
|
|
354
399
|
/**
|
|
355
400
|
* Executes a SELECT query and returns rows.
|
|
356
401
|
* Use for queries returning multiple rows.
|
|
402
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
357
403
|
*
|
|
358
404
|
* @param query - SELECT query with :name or ? placeholders
|
|
359
405
|
* @param parameters - Parameter values
|
|
360
406
|
* @returns Array of rows
|
|
361
407
|
* @example
|
|
362
|
-
* const users = await db.query('SELECT * FROM users WHERE
|
|
408
|
+
* const users = await db.query('SELECT * FROM users WHERE job_name = :job', { job: 'police' });
|
|
363
409
|
*/
|
|
364
410
|
async query(query, parameters) {
|
|
365
|
-
this.scheduleResourceTick();
|
|
366
411
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
367
|
-
return this.
|
|
368
|
-
|
|
369
|
-
|
|
412
|
+
return this.rawQuery(processedQuery, processedParams);
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* Inserts a row with raw positional parameters.
|
|
416
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
417
|
+
* Returns the auto-generated ID.
|
|
418
|
+
*
|
|
419
|
+
* @param query - INSERT query with ? placeholders only
|
|
420
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
421
|
+
* @returns Insert ID or null on error
|
|
422
|
+
* @example
|
|
423
|
+
* const insertId = await db.rawInsert('INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (?, ?, ?, ?, ?)', [1, 1, 'John', 'Doe', 1]);
|
|
424
|
+
*/
|
|
425
|
+
async rawInsert(query, parameters) {
|
|
426
|
+
this.scheduleResourceTick();
|
|
427
|
+
const params = parameters || [];
|
|
428
|
+
return this.executeWithTiming(query, params, async () => {
|
|
429
|
+
const [result] = await this.pool.execute(query, params);
|
|
430
|
+
return result.insertId;
|
|
370
431
|
});
|
|
371
432
|
}
|
|
372
433
|
/**
|
|
373
434
|
* Inserts a row into the database.
|
|
374
435
|
* Returns the auto-generated ID.
|
|
436
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
375
437
|
*
|
|
376
438
|
* @param query - INSERT query with :name or ? placeholders
|
|
377
439
|
* @param parameters - Values to insert
|
|
378
440
|
* @returns Insert ID or null on error
|
|
379
441
|
* @example
|
|
380
442
|
* const insertId = await db.insert(
|
|
381
|
-
* 'INSERT INTO users (
|
|
382
|
-
* {
|
|
443
|
+
* 'INSERT INTO users (identifier_id, char_data_id, first_name, last_name, inventory_id) VALUES (:identifier_id, :char_data_id, :first_name, :last_name, :inventory_id)',
|
|
444
|
+
* { identifier_id: 1, char_data_id: 1, first_name: 'John', last_name: 'Doe', inventory_id: 1 }
|
|
383
445
|
* );
|
|
384
|
-
* console.log(insertId);
|
|
385
446
|
*/
|
|
386
447
|
async insert(query, parameters) {
|
|
387
448
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
388
|
-
return this.
|
|
389
|
-
|
|
390
|
-
|
|
449
|
+
return this.rawInsert(processedQuery, processedParams);
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Updates rows with raw positional parameters.
|
|
453
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
454
|
+
* Returns the number of affected rows.
|
|
455
|
+
*
|
|
456
|
+
* @param query - UPDATE query with ? placeholders only
|
|
457
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
458
|
+
* @returns Number of affected rows or null on error
|
|
459
|
+
* @example
|
|
460
|
+
* const affectedRows = await db.rawUpdate('UPDATE users SET job_name = ?, job_rank = ? WHERE uid = ?', ['police', 1, 123]);
|
|
461
|
+
*/
|
|
462
|
+
async rawUpdate(query, parameters) {
|
|
463
|
+
this.scheduleResourceTick();
|
|
464
|
+
const params = parameters || [];
|
|
465
|
+
return this.executeWithTiming(query, params, async () => {
|
|
466
|
+
const [result] = await this.pool.execute(query, params);
|
|
467
|
+
return result.affectedRows;
|
|
391
468
|
});
|
|
392
469
|
}
|
|
393
470
|
/**
|
|
394
471
|
* Updates rows in the database.
|
|
395
472
|
* Returns the number of affected rows.
|
|
473
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
396
474
|
*
|
|
397
475
|
* @param query - UPDATE query with :name or ? placeholders
|
|
398
476
|
* @param parameters - Values to update
|
|
399
477
|
* @returns Number of affected rows or null on error
|
|
400
478
|
* @example
|
|
401
479
|
* const affectedRows = await db.update(
|
|
402
|
-
* 'UPDATE users SET
|
|
403
|
-
* {
|
|
480
|
+
* 'UPDATE users SET job_name = :job, job_rank = :rank WHERE uid = :uid',
|
|
481
|
+
* { job: 'police', rank: 1, uid: 123 }
|
|
404
482
|
* );
|
|
405
|
-
* console.log(affectedRows);
|
|
406
483
|
*/
|
|
407
484
|
async update(query, parameters) {
|
|
408
485
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
409
|
-
return this.
|
|
410
|
-
|
|
411
|
-
|
|
486
|
+
return this.rawUpdate(processedQuery, processedParams);
|
|
487
|
+
}
|
|
488
|
+
/**
|
|
489
|
+
* Returns a single value with raw positional parameters.
|
|
490
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
491
|
+
* Use for COUNT, SUM, or single column queries.
|
|
492
|
+
*
|
|
493
|
+
* @param query - SELECT query with ? placeholders only, returning one column
|
|
494
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
495
|
+
* @returns Value from first column of first row, or null
|
|
496
|
+
* @example
|
|
497
|
+
* const count = await db.rawScalar('SELECT COUNT(*) FROM users WHERE age > ?', [18]);
|
|
498
|
+
*/
|
|
499
|
+
async rawScalar(query, parameters) {
|
|
500
|
+
this.scheduleResourceTick();
|
|
501
|
+
const params = parameters || [];
|
|
502
|
+
return this.executeWithTiming(query, params, async () => {
|
|
503
|
+
const [rows] = await this.pool.query(query, params);
|
|
504
|
+
if (!rows || rows.length === 0) {
|
|
505
|
+
return null;
|
|
506
|
+
}
|
|
507
|
+
const firstRow = rows[0];
|
|
508
|
+
const firstColumn = Object.values(firstRow)[0];
|
|
509
|
+
return firstColumn;
|
|
412
510
|
});
|
|
413
511
|
}
|
|
414
512
|
/**
|
|
415
513
|
* Returns a single value from the database.
|
|
416
514
|
* Use for COUNT, SUM, or single column queries.
|
|
515
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
417
516
|
*
|
|
418
517
|
* @param query - SELECT query returning one column
|
|
419
518
|
* @param parameters - Parameter values
|
|
@@ -424,19 +523,31 @@ export class MySQL {
|
|
|
424
523
|
*/
|
|
425
524
|
async scalar(query, parameters) {
|
|
426
525
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
427
|
-
return this.
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
526
|
+
return this.rawScalar(processedQuery, processedParams);
|
|
527
|
+
}
|
|
528
|
+
/**
|
|
529
|
+
* Returns a single row with raw positional parameters.
|
|
530
|
+
* This cannot use named parameters (i.e. :job_name, or @job_name), you cannot use undefined as a value here you *must* use null, otherwise you will get an error.
|
|
531
|
+
* Returns null if no rows match.
|
|
532
|
+
*
|
|
533
|
+
* @param query - SELECT query with ? placeholders only
|
|
534
|
+
* @param parameters - Array of values (undefined values are NOT converted to null)
|
|
535
|
+
* @returns Single row or null
|
|
536
|
+
* @example
|
|
537
|
+
* const user = await db.rawSingle('SELECT * FROM users WHERE id = ?', [1]);
|
|
538
|
+
*/
|
|
539
|
+
async rawSingle(query, parameters) {
|
|
540
|
+
this.scheduleResourceTick();
|
|
541
|
+
const params = parameters || [];
|
|
542
|
+
return this.executeWithTiming(query, params, async () => {
|
|
543
|
+
const [rows] = await this.pool.query(query, params);
|
|
544
|
+
return rows.length > 0 ? rows[0] : null;
|
|
435
545
|
});
|
|
436
546
|
}
|
|
437
547
|
/**
|
|
438
548
|
* Returns a single row from the database.
|
|
439
549
|
* Returns null if no rows match.
|
|
550
|
+
* Processes named parameters (:name), converts undefined to null, and converts @ to :.
|
|
440
551
|
*
|
|
441
552
|
* @param query - SELECT query with :name or ? placeholders
|
|
442
553
|
* @param parameters - Parameter values
|
|
@@ -449,10 +560,7 @@ export class MySQL {
|
|
|
449
560
|
*/
|
|
450
561
|
async single(query, parameters) {
|
|
451
562
|
const [processedQuery, processedParams] = this.processParameters(query, parameters);
|
|
452
|
-
return this.
|
|
453
|
-
const [rows] = await this.pool.query(processedQuery, processedParams);
|
|
454
|
-
return rows.length > 0 ? rows[0] : null;
|
|
455
|
-
});
|
|
563
|
+
return this.rawSingle(processedQuery, processedParams);
|
|
456
564
|
}
|
|
457
565
|
/**
|
|
458
566
|
* Executes multiple queries as an atomic transaction.
|
|
@@ -468,32 +576,11 @@ export class MySQL {
|
|
|
468
576
|
* });
|
|
469
577
|
*/
|
|
470
578
|
async transaction(callback) {
|
|
471
|
-
this.scheduleResourceTick();
|
|
472
579
|
return this.executeTransaction(async (connection) => {
|
|
473
|
-
const executeInTransaction = (query, parameters) => {
|
|
474
|
-
return this.executeInConnection(connection, query, parameters);
|
|
580
|
+
const executeInTransaction = async (query, parameters) => {
|
|
581
|
+
return await this.executeInConnection(connection, query, parameters);
|
|
475
582
|
};
|
|
476
|
-
return callback(executeInTransaction);
|
|
477
|
-
});
|
|
478
|
-
}
|
|
479
|
-
/**
|
|
480
|
-
* Executes a query with positional parameters.
|
|
481
|
-
* Skips named parameter processing. Use ? placeholders only.
|
|
482
|
-
*
|
|
483
|
-
* @param query - SQL query with ? placeholders
|
|
484
|
-
* @param parameters - Array of values for placeholders
|
|
485
|
-
* @returns Query result
|
|
486
|
-
* @example
|
|
487
|
-
* const result = await db.rawExecute('SELECT * FROM users WHERE id = ?', [1]);
|
|
488
|
-
*/
|
|
489
|
-
async rawExecute(query, parameters) {
|
|
490
|
-
this.scheduleResourceTick();
|
|
491
|
-
const processedQuery = this.replaceAtSymbols(query);
|
|
492
|
-
const params = parameters || [];
|
|
493
|
-
this.normalizeParameters(params);
|
|
494
|
-
return this.executeWithTiming(processedQuery, params, async () => {
|
|
495
|
-
const [results] = await this.pool.execute(processedQuery, params);
|
|
496
|
-
return results;
|
|
583
|
+
return await callback(executeInTransaction);
|
|
497
584
|
});
|
|
498
585
|
}
|
|
499
586
|
/**
|
|
@@ -514,7 +601,6 @@ export class MySQL {
|
|
|
514
601
|
* }
|
|
515
602
|
*/
|
|
516
603
|
async batch(queries) {
|
|
517
|
-
this.scheduleResourceTick();
|
|
518
604
|
return this.executeTransaction(async (connection) => {
|
|
519
605
|
const results = [];
|
|
520
606
|
for (const { query, parameters } of queries) {
|
package/dist/MySQL.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MySQL.js","sourceRoot":"","sources":["../src/MySQL.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MySQL.js","sourceRoot":"","sources":["../src/MySQL.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED