@@ -44,13 +44,19 @@ const conn = mysql.createPool(access);
44
44
```
45
45
46
46
## Query and Execute
47
- ### A simple SELECT
47
+ ### A simple query
48
48
``` ts
49
49
conn .query (' SELECT 1 + 1 AS `test`;' , (_err , rows ) => {
50
50
/**
51
51
* @rows: [ { test: 2 } ]
52
52
*/
53
53
});
54
+
55
+ conn .execute (' SELECT 1 + 1 AS `test`;' , (_err , rows ) => {
56
+ /**
57
+ * @rows: [ { test: 2 } ]
58
+ */
59
+ });
54
60
```
55
61
56
62
The ` rows ` output will be these possible types:
@@ -76,18 +82,27 @@ const conn = mysql.createConnection({
76
82
database: ' test' ,
77
83
});
78
84
85
+ /** SELECT */
79
86
conn .query <RowDataPacket []>(' SELECT 1 + 1 AS `test`;' , (_err , rows ) => {
80
87
console .log (rows );
81
88
/**
82
89
* @rows: [ { test: 2 } ]
83
90
*/
84
91
});
92
+
93
+ /** SHOW */
94
+ conn .query <RowDataPacket []>(' SHOW TABLES FROM `test`;' , (_err , rows ) => {
95
+ console .log (rows );
96
+ /**
97
+ * @rows: [ { Tables_in_test: 'test' } ]
98
+ */
99
+ });
85
100
```
86
101
87
102
---
88
103
89
104
#### RowDataPacket[ ] [ ]
90
- - ` rowsAsArray `
105
+ - When ` rowsAsArray ` option is ` true `
91
106
``` ts
92
107
import mysql , { RowDataPacket } from ' mysql2' ;
93
108
@@ -107,9 +122,16 @@ conn.query<RowDataPacket[]>('SELECT 1 + 1 AS `test`;', (_err, rows) => {
107
122
* @rows: [ [ 2, 4 ] ]
108
123
*/
109
124
});
125
+
126
+ conn .query <RowDataPacket [][]>(sql , (_err , rows ) => {
127
+ console .log (rows );
128
+ /**
129
+ * @rows: [ [ 'test' ] ]
130
+ */
131
+ });
110
132
```
111
133
112
- - ` multipleStatements ` with multiple queries
134
+ - When ` multipleStatements ` is ` true ` with multiple queries
113
135
``` ts
114
136
import mysql , { RowDataPacket } from ' mysql2' ;
115
137
@@ -132,16 +154,84 @@ conn.query<RowDataPacket[]>('SELECT 1 + 1 AS `test`;', (_err, rows) => {
132
154
});
133
155
```
134
156
157
+ ---
158
+
135
159
#### ResultSetHeader
136
- > In progress
160
+ For ` INSERT ` , ` UPDATE ` , ` DELETE ` , ` TRUNCATE ` , etc.
161
+ ``` ts
162
+ import mysql , { ResultSetHeader } from ' mysql2' ;
137
163
138
- #### ProcedureCallPacket
139
- > In progress
164
+ const conn = mysql .createConnection ({
165
+ user: ' test' ,
166
+ database: ' test' ,
167
+ });
140
168
141
- #### OkPacket
142
- > In progress
169
+ const sql = `
170
+ SET @1 = 1;
171
+ ` ;
172
+
173
+ conn .query <ResultSetHeader >(sql , (_err , result ) => {
174
+ console .log (result );
175
+ /**
176
+ * @result: ResultSetHeader {
177
+ fieldCount: 0,
178
+ affectedRows: 0,
179
+ insertId: 0,
180
+ info: '',
181
+ serverStatus: 2,
182
+ warningStatus: 0
183
+ }
184
+ */
185
+ });
186
+ ```
187
+
188
+ ---
189
+
190
+ #### ResultSetHeader[ ]
191
+ > Needs to be fixed ⚠️
192
+
193
+ For multiples ` INSERT ` , ` UPDATE ` , ` DELETE ` , ` TRUNCATE ` , etc. when using ` multipleStatements `
194
+
195
+ ``` ts
196
+ import mysql , { ResultSetHeader } from ' mysql2' ;
143
197
144
- #### OkPacket[ ]
198
+ const conn = mysql .createConnection ({
199
+ user: ' test' ,
200
+ database: ' test' ,
201
+ multipleStatements: true ,
202
+ });
203
+
204
+ const sql = `
205
+ SET @1 = 1;
206
+ SET @2 = 2;
207
+ ` ;
208
+
209
+ conn .query <ResultSetHeader []>(sql , (_err , result ) => {
210
+ console .log (result );
211
+ /**
212
+ * @result: [
213
+ ResultSetHeader {
214
+ fieldCount: 0,
215
+ affectedRows: 0,
216
+ insertId: 0,
217
+ info: '',
218
+ serverStatus: 10,
219
+ warningStatus: 0
220
+ },
221
+ ResultSetHeader {
222
+ fieldCount: 0,
223
+ affectedRows: 0,
224
+ insertId: 0,
225
+ info: '',
226
+ serverStatus: 2,
227
+ warningStatus: 0
228
+ }
229
+ ]
230
+ */
231
+ });
232
+ ```
233
+
234
+ #### ProcedureCallPacket
145
235
> In progress
146
236
147
237
---
0 commit comments