mm_sqlite 1.0.6 → 1.0.8

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/test.js CHANGED
@@ -1,654 +1,81 @@
1
1
  const Sqlite = require('./index.js').Sqlite;
2
2
 
3
- // var sql = new Sqlite();
4
- // sql.setConfig({
5
- // multipleStatements: true
6
- // });
7
- // sql.open();
8
-
9
- var tpl = {
10
- "query": {
11
- "state_min": "`state` >= '{0}'",
12
- "state_max": "`state` <= '{0}'",
13
- "vip_min": "`vip` >= '{0}'",
14
- "vip_max": "`vip` <= '{0}'",
15
- "gm_min": "`gm` >= '{0}'",
16
- "gm_max": "`gm` <= '{0}'",
17
- "mc_min": "`mc` >= '{0}'",
18
- "mc_max": "`mc` <= '{0}'",
19
- "create_time_min": "`create_time` >= '{0}'",
20
- "create_time_max": "`create_time` <= '{0}'",
21
- "login_time_min": "`login_time` >= '{0}'",
22
- "login_time_max": "`login_time` <= '{0}'",
23
- "salt": "`salt` like '%{0}%'",
24
- "invite_code": "`invite_code` like '%{0}%'",
25
- "phone": "`phone` like '%{0}%'",
26
- "username": "`username` like '%{0}%'",
27
- "nickname": "`nickname` like '%{0}%'",
28
- "password": "`password` like '%{0}%'",
29
- "email": "`email` like '%{0}%'",
30
- "user_group": "`user_group` like '%{0}%'",
31
- "user_admin": "`user_admin` like '%{0}%'",
32
- "login_ip": "`login_ip` like '%{0}%'",
33
- "signature": "`signature` like '%{0}%'",
34
- "avatar": "`avatar` like '%{0}%'",
35
- "friends": "`friends` like '%{0}%'",
36
- "admin_group": "`admin_group` like '%{0}%'"
37
- },
38
- "update": {
39
- "state_add": "`state` = `state` + '{0}'",
40
- "vip_add": "`vip` = `vip` + '{0}'",
41
- "gm_add": "`gm` = `gm` + '{0}'",
42
- "mc_add": "`mc` = `mc` + '{0}'"
43
- }
44
- };
45
-
46
- // // 测试模板修改
47
- // async function test_tpl_set() {
48
- // var sql = new Sqlite();
49
- // sql.open();
50
- // db = sql.db();
51
- // db.table = 'user_account';
52
- // // 修改
53
- // var query = {
54
- // gm: '5|4',
55
- // username: 'ad%m|in'
56
- // };
57
- // var body = {
58
- // mc: 5,
59
- // vip: 5,
60
- // phone: '15817188815'
61
- // }
62
- // var query_str = db.tpl_query(query, tpl.query);
63
- // var set_str = db.tpl_body(body, tpl.update);
64
-
65
- // ret = await db.setSql(query_str, set_str);
66
- // console.log('修改结果', ret);
67
- // console.log('SQL语句', db.sql);
68
- // }
69
- // test_tpl_set();
70
-
71
- // // 测试模板查询
72
- // async function test_tpl_get() {
73
- // console.log("来时");
74
- // var sql = new Sqlite();
75
- // sql.open();
76
- // db = sql.db();
77
-
78
- // var num = 0;
79
- // db.table = 'user_account';
80
- // var query = {
81
- // gm_min: 2,
82
- // username: 'ad%m'
83
- // };
84
- // db.page = 1;
85
- // db.size = 5;
86
- // var query_str = db.tpl_query(query, tpl.query);
87
- // ret = await db.getCountSql(query_str, "`user_id` desc", "*");
88
- // console.log('查询结果', ret);
89
- // console.log('SQL语句', db.sql, db.error);
90
-
91
- // ret = await db.groupSumSql(query_str, "mc", "gm");
92
- // console.log('求和查询结果', ret);
93
- // }
94
- // test_tpl_get();
95
-
96
- // async function addField() {
97
- // var sql = new Sqlite();
98
- // sql.open();
99
- // db = sql.db();
100
- // var num = 0;
101
- // db.table = 'test';
102
- // // num = await db.field_del('set6');
103
- // // num = await db.field_add('set6', 'str');
104
- // var bl = await db.addTable('test', 'uid', 'int', true, '测试表');
105
- // console.log("创建表:" + num);
106
- // if (bl < 0) {
107
- // console.log("SQL:" + db.sql);
108
- // }
109
- // // num = await db.field_add("uid", 'int', 0, true, true, true);
110
- // // console.log("uid结果:" + num);
111
- // // if (num < 0) {
112
- // // console.log("SQL:" + db.sql);
113
- // // }
114
-
115
- // num = await db.field_add("name", 'varchar(18)', '', true);
116
- // console.log("name结果:" + num);
117
- // if (num < 0) {
118
- // console.log("SQL:" + db.sql);
119
- // }
120
-
121
- // num = await db.field_add("username", 'varchar(18)', '', true);
122
- // console.log("username结果:" + num);
123
- // if (num < 0) {
124
- // console.log("SQL:" + db.sql);
125
- // }
126
-
127
- // num = await db.field_add("password", 'string', '', true);
128
- // console.log("password结果:" + num);
129
- // if (num < 0) {
130
- // console.log("SQL:" + db.sql);
131
- // }
132
-
133
- // num = await db.field_add("email", 'varchar', null);
134
- // console.log("email结果:" + num);
135
- // if (num < 0) {
136
- // console.log("SQL:" + db.sql);
137
- // }
138
-
139
- // num = await db.field_add("age", 'smallint', 0);
140
- // console.log("age结果:" + num);
141
- // if (num < 0) {
142
- // console.log("SQL:" + db.sql);
143
- // }
144
-
145
- // num = await db.field_add("sex", 'tinyint', 0);
146
- // console.log("sex结果:" + num);
147
- // if (num < 0) {
148
- // console.log("SQL:" + db.sql);
149
- // }
150
-
151
- // num = await db.field_add("create_time", 'timestamp', null, true, true);
152
- // console.log("create_time结果:" + num);
153
- // if (num < 0) {
154
- // console.log("SQL:" + db.sql);
155
- // }
156
-
157
- // num = await db.field_add("update_time", 'timestamp', null, true, true);
158
- // console.log("update_time结果:" + num);
159
- // if (num < 0) {
160
- // console.log("SQL:" + db.sql);
161
- // }
162
-
163
- // num = await db.field_add("last_time", 'timestamp');
164
- // console.log("last_time结果:" + num);
165
- // if (num < 0) {
166
- // console.log("SQL:" + db.sql);
167
- // }
168
-
169
- // num = await db.field_add("birthday", 'date', '2020-06-28', true);
170
- // console.log("birthday结果:" + num);
171
- // if (num < 0) {
172
- // console.log("SQL:" + db.sql);
173
- // }
174
-
175
- // num = await db.field_add("note", 'text', '123123', false);
176
- // console.log("note结果:" + num);
177
- // if (num < 0) {
178
- // console.log("SQL:" + db.sql);
179
- // }
180
-
181
- // num = await db.field_add("content", 'longtext', '123123', false);
182
- // console.log("content结果:" + num);
183
- // if (num < 0) {
184
- // console.log("SQL:" + db.sql);
185
- // }
186
-
187
- // num = await db.field_add("cycle", 'time', null, true);
188
- // console.log("cycle结果:" + num);
189
- // if (num < 0) {
190
- // console.log("SQL:" + db.sql);
191
- // }
192
-
193
- // num = await db.field_add("money", 'double', 0);
194
- // console.log("money结果:" + num);
195
- // if (num < 0) {
196
- // console.log("SQL:" + db.sql);
197
- // }
198
-
199
- // num = await db.field_add("like", 'string', '篮球 足球 乒乓球');
200
- // console.log("like结果:" + num);
201
- // if (num < 0) {
202
- // console.log("SQL:" + db.sql);
203
- // }
204
- // }
205
-
206
- // addField();
207
-
208
-
209
- // async function test() {
210
- // var sql = new Sqlite();
211
- // sql.open();
212
- // db = sql.db();
213
- // db.table = "user_account"
214
- // var ret = await db.get({ username: 'admin' }, null, null, false);
215
- // console.log(ret);
216
- // console.log(db.error);
217
- // }
218
- // test();
219
-
220
- // // 分组统计
221
- // async function test() {
222
- // var sql = new Sqlite();
223
- // sql.open();
224
- // db = sql.db();
225
- // db.table = "user_account"
226
- // var ret = await db.groupSum({}, "admin_id", "vip,gm", "sum_vip desc");
227
- // console.log(ret);
228
- // console.log(db.sql);
229
- // console.log(db.error);
230
-
231
- // ret = await db.groupCount({}, "admin_id", "vip,gm", "count_vip asc");
232
- // console.log(ret);
233
- // console.log(db.sql);
234
- // console.log(db.error);
235
-
236
- // // 通用式 最后一个参数传 count、sum、avg、min
237
- // ret = await db.groupMath({}, "nickname", "vip", "min_vip asc", "min");
238
- // console.log(ret);
239
- // console.log(db.sql);
240
- // console.log(db.error);
241
- // }
242
- // test();
243
-
244
- // // 合并操作
245
- // async function test() {
246
- // var sql = new Sqlite();
247
- // sql.config.log = true;
248
- // sql.open();
249
- // var db = sql.db();
250
- // // 取回上级对象,实际运用时看情况
251
- // var sql2 = db.parent();
252
- // // 取用户相关模型
253
- // var dbs = await sql2.dbs("user_id", 1, true, "user_account", "user_info", "service_member");
254
- // console.log("123", dbs.model);
255
-
256
- // var user = dbs.model;
257
- // // console.log(user);
258
-
259
- // user.member.name = "美白";
260
- // // 合并属性
261
- // var u = dbs.merge();
262
- // // console.log(u);
263
- // u.age = 18;
264
- // u.name = "芬芬";
265
-
266
- // // console.log(user);
267
- // }
268
- // test();
269
-
270
- // // 测试获取字段
271
- // async function test3() {
272
- // var sql = new Sqlite();
273
- // sql.config.log = true;
274
- // sql.open();
275
- // var db = sql.db();
276
- // var fields = await db.fields("user_account");
277
- // console.log(fields);
278
- // }
279
- // test3();
280
-
281
-
282
- // // 测试实例新对象获取
283
- // async function test3(){
284
- // var sql = new Sqlite();
285
- // sql.open();
286
- // sql.config.log = true;
287
- // var db = sql.db();
288
- // var db2 = db.new("user_account");
289
- // var list = await db2.get();
290
- // console.log(list);
291
- // }
292
- // test3();
293
-
294
- // 事务
295
- // async function test() {
296
- // sql.config.log = true;
297
- // var db = sql.db();
298
- // // var db2 = sql.db();
299
- // // await db.start();
300
- // // console.log(db.task);
301
- // db.table = "cloud_user_flow";
302
- // // var te = await db.add({
303
- // // user_id: 1
304
- // // });
305
- // // var user = await db.getObj({
306
- // // user_id: 1
307
- // // });
308
- // // var te1 = await db.add({
309
- // // user_id1: 3
310
- // // });
311
-
312
- // var bl = await db.set({
313
- // user_id_not: "1"
314
- // }, {
315
- // amount_del: 5,
316
- // balance_add: 1000,
317
- // state: 2
318
- // });
319
-
320
- // // db.table = "user_account";
321
- // // db.size = 0;
322
- // // var list_user = await db.get({
323
- // // user_id_has: "1,45,46,47,48"
324
- // // });
325
- // // console.log(list_user);
326
-
327
- // // db2.table = "cloud_user_flow";
328
- // // db2.add({
329
- // // user_id: 1,
330
- // // note: "哈哈"
331
- // // });
332
- // // console.log(user);
333
- // // await db.commit();
334
- // console.log(db.sql);
335
- // // await db.back();
336
- // }
337
-
338
-
339
- // // 算法排序
340
- // async function test() {
341
- // var sql = new Sqlite();
342
- // sql.open();
343
- // var db = sql.db();
344
- // // db.table = "user_account"
345
- // // var ret = await db.get({}, "score desc", "username,vip+gm*3 score");
346
-
347
- // db.table = "user_account";
348
- // db.page = 1;
349
- // db.size = 10;
350
- // db.like = false;
351
- // var ret = await db.groupAvg({
352
- // state: 1,
353
- // time_create_min: "2021-09-22 00:00:00",
354
- // time_create_max: "2021-09-23 00:00:00",
355
- // }, "user_id", "gm");
356
-
357
- // console.log(ret);
358
- // console.log(db.sql);
359
- // console.log(db.error);
360
- // }
361
- // test();
362
-
363
- // async function test() {
364
- // var sql = new Sqlite();
365
- // sql.open();
366
- // db = sql.db();
367
- // db.table = "test";
368
- // await db.clearTable(false);
369
- // var addArr = [];
370
- // for (var i = 1; i <= 9; i++) {
371
- // var add = {
372
- // name: "test" + i,
373
- // username: "t" + i,
374
- // password: "a" + i
375
- // };
376
- // addArr.push(add);
377
- // }
378
- // var ret = await db.addList(addArr);
379
- // console.log("添加:" + JSON.stringify(ret), db.error);
380
- // var setArr = [];
381
- // for (var i = 1; i <= addArr.length; i++) {
382
- // setArr.push({
383
- // query: {
384
- // name: "test" + i
385
- // },
386
- // item: {
387
- // username: "username" + i,
388
- // password: "password" + i
389
- // }
390
- // });
391
- // }
392
- // ret = await db.setList(setArr);
393
- // console.log("修改:" + JSON.stringify(ret), db.error);
394
-
395
- // var delArr = [];
396
- // for (var i = 1; i <= addArr.length; i++) {
397
- // if (i % 2 == 0) {
398
- // delArr.push({
399
- // query: {
400
- // username: "username" + i
401
- // }
402
- // });
403
- // }
404
- // }
405
- // // ret = await db.delList(delArr);
406
- // ret = await db.del({
407
- // username: "username"
408
- // });
409
- // console.log("删除:" + JSON.stringify(ret), db.error);
410
- // }
411
-
412
- // test();
413
-
414
-
415
-
416
- async function setField() {
3
+ // 全面测试函数
4
+ async function runAllTests() {
5
+ $.log.info('开始全面测试mm_sqlite模块...');
417
6
  var sql = new Sqlite();
418
- sql.open();
419
- db = sql.db();
420
- var num = 0;
421
- db.table = 'test';
422
- // num = await db.field_set("uid", 'int', 0, true, true, true);
423
- // console.log("uid结果:" + num, db.sql);
424
- // if (num < 0) {
425
- // console.log("SQL:" + db.sql);
426
- // }
427
-
428
- num = await db.field_set("username", 'varchar(11)', '', true);
429
- console.log("username结果:" + num);
430
- if (num < 0) {
431
- console.log("SQL:" + db.sql);
7
+ await sql.open();
8
+
9
+ var test_table = 'test_mm_sqlite';
10
+
11
+ try {
12
+ // 1. 测试表创建
13
+ $.log.info('1. 测试表创建...');
14
+ let create_sql = `CREATE TABLE IF NOT EXISTS ${test_table} (
15
+ uid INTEGER PRIMARY KEY AUTOINCREMENT,
16
+ username VARCHAR(50) NOT NULL,
17
+ age INTEGER DEFAULT 0,
18
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
19
+ )`;
20
+ let create_result = await sql.run(create_sql);
21
+ $.log.info('表创建结果:', create_result);
22
+
23
+ // 2. 测试数据插入
24
+ $.log.info('2. 测试数据插入...');
25
+ let insert_sql = `INSERT INTO ${test_table} (username, age) VALUES (?, ?)`;
26
+ let insert_result = await sql.run(insert_sql, ['test_user_1', 25]);
27
+ $.log.info('插入结果:', insert_result);
28
+
29
+ // 3. 测试查询 - 使用exec方法并安全处理返回结果
30
+ $.log.info('3. 测试查询...');
31
+ let query_sql = `SELECT * FROM ${test_table}`;
32
+ let query_result = await sql.exec(query_sql);
33
+ $.log.info('查询结果类型:', typeof query_result);
34
+ $.log.info('查询结果:', query_result);
35
+
36
+ // 4. 测试更新
37
+ $.log.info('4. 测试更新...');
38
+ let update_sql = `UPDATE ${test_table} SET age = ? WHERE username = ?`;
39
+ let update_result = await sql.run(update_sql, [26, 'test_user_1']);
40
+ $.log.info('更新结果:', update_result);
41
+
42
+ // 5. 测试删除
43
+ $.log.info('5. 测试删除...');
44
+ let delete_sql = `DELETE FROM ${test_table} WHERE username = ?`;
45
+ let delete_result = await sql.run(delete_sql, ['test_user_1']);
46
+ $.log.info('删除结果:', delete_result);
47
+
48
+ // 6. 测试事务
49
+ $.log.info('6. 测试事务...');
50
+ let transaction_result = await sql.transaction(async () => {
51
+ await sql.run(`INSERT INTO ${test_table} (username, age) VALUES (?, ?)`, ['transaction_user', 40]);
52
+ return await sql.run(`DELETE FROM ${test_table} WHERE username = ?`, ['transaction_user']);
53
+ });
54
+ $.log.info('事务结果:', transaction_result);
55
+
56
+ // 7. 测试表列表 - 安全处理exec返回结果
57
+ $.log.info('7. 测试表列表...');
58
+ let tables_sql = `SELECT name FROM sqlite_master WHERE type='table'`;
59
+ let tables_result = await sql.exec(tables_sql);
60
+ $.log.info('表列表类型:', typeof tables_result);
61
+ $.log.info('表列表:', tables_result);
62
+
63
+ // 8. 清理测试表
64
+ $.log.info('8. 清理测试表...');
65
+ let drop_result = await sql.run(`DROP TABLE IF EXISTS ${test_table}`);
66
+ $.log.info('删除表结果:', drop_result);
67
+
68
+ $.log.info('所有测试完成!mm_sqlite模块功能正常。');
69
+ return true;
70
+ } catch (error) {
71
+ $.log.error('测试过程中发生错误:', error);
72
+ return false;
73
+ } finally {
74
+ await sql.close();
432
75
  }
433
-
434
- // num = await db.field_set("password", 'string', null, true);
435
- // console.log("password结果:" + num);
436
- // if (num < 0) {
437
- // console.log("SQL:" + db.sql);
438
- // }
439
-
440
- // num = await db.field_set("email", 'varchar', null);
441
- // console.log("email结果:" + num);
442
- // if (num < 0) {
443
- // console.log("SQL:" + db.sql);
444
- // }
445
-
446
- // num = await db.field_set("age", 'bigint', 0);
447
- // console.log("age结果:" + num);
448
- // if (num < 0) {
449
- // console.log("SQL:" + db.sql);
450
- // }
451
-
452
- // num = await db.field_set("sex", 'int', 0);
453
- // console.log("sex结果:" + num);
454
- // if (num < 0) {
455
- // console.log("SQL:" + db.sql);
456
- // }
457
-
458
- // num = await db.field_set("create_time", 'timestamp', null, true, true);
459
- // console.log("create_time结果:" + num);
460
- // if (num < 0) {
461
- // console.log("SQL:" + db.sql);
462
- // }
463
-
464
- // num = await db.field_set("last_time", 'timestamp', null, true, true);
465
- // console.log("last_time结果:" + num);
466
- // if (num < 0) {
467
- // console.log("SQL:" + db.sql);
468
- // }
469
-
470
- // num = await db.field_set("birthday", 'datetime');
471
- // console.log("birthday结果:" + num);
472
- // if (num < 0) {
473
- // console.log("SQL:" + db.sql);
474
- // }
475
-
476
- // num = await db.field_set("note", 'text', null);
477
- // console.log("note结果:" + num);
478
- // if (num < 0) {
479
- // console.log("SQL:" + db.sql);
480
- // }
481
-
482
- // num = await db.field_set("cycle", 'date', null, true, false);
483
- // console.log("cycle结果:" + num);
484
- // if (num < 0) {
485
- // console.log("SQL:" + db.sql);
486
- // }
487
-
488
- // num = await db.field_set("money", 'float', 0);
489
- // console.log("money结果:" + num);
490
- // if (num < 0) {
491
- // console.log("SQL:" + db.sql);
492
- // }
493
76
  }
494
77
 
495
- setField();
496
-
497
-
498
- //
499
- // async function delField() {
500
- // var sql = new Sqlite();
501
- // sql.open();
502
- // db = sql.db();
503
- // var num = 0;
504
- // db.table = 'test';
505
- // num = await db.field_del("uid");
506
- // console.log("uid结果:" + num);
507
- // if (num < 0) {
508
- // console.log("SQL:" + db.sql);
509
- // }
510
- //
511
- // num = await db.field_del("username");
512
- // console.log("username结果:" + num);
513
- // if (num < 0) {
514
- // console.log("SQL:" + db.sql);
515
- // }
516
- //
517
- // num = await db.field_del("password");
518
- // console.log("password结果:" + num);
519
- // if (num < 0) {
520
- // console.log("SQL:" + db.sql);
521
- // }
522
- //
523
- // num = await db.field_del("email");
524
- // console.log("email结果:" + num);
525
- // if (num < 0) {
526
- // console.log("SQL:" + db.sql);
527
- // }
528
- //
529
- // num = await db.field_del("age");
530
- // console.log("age结果:" + num);
531
- // if (num < 0) {
532
- // console.log("SQL:" + db.sql);
533
- // }
534
- //
535
- // num = await db.field_del("sex");
536
- // console.log("sex结果:" + num);
537
- // if (num < 0) {
538
- // console.log("SQL:" + db.sql);
539
- // }
540
- //
541
- // num = await db.field_del("create_time");
542
- // console.log("create_time结果:" + num);
543
- // if (num < 0) {
544
- // console.log("SQL:" + db.sql);
545
- // }
546
- //
547
- // num = await db.field_del("last_time");
548
- // console.log("last_time结果:" + num);
549
- // if (num < 0) {
550
- // console.log("SQL:" + db.sql);
551
- // }
552
- //
553
- // num = await db.field_del("birthday");
554
- // console.log("birthday结果:" + num);
555
- // if (num < 0) {
556
- // console.log("SQL:" + db.sql);
557
- // }
558
- //
559
- // num = await db.field_del("note");
560
- // console.log("note结果:" + num);
561
- // if (num < 0) {
562
- // console.log("SQL:" + db.sql);
563
- // }
564
- //
565
- // num = await db.field_del("cycle");
566
- // console.log("cycle结果:" + num);
567
- // if (num < 0) {
568
- // console.log("SQL:" + db.sql);
569
- // }
570
- //
571
- // num = await db.field_del("money");
572
- // console.log("money结果:" + num);
573
- // if (num < 0) {
574
- // console.log("SQL:" + db.sql);
575
- // }
576
- // }
577
- //
578
- // delField();
579
-
580
-
581
- // async function newName() {
582
- // var sql = new Sqlite();
583
- // sql.open();
584
- // db = sql.db();
585
- // var num = 0;
586
- // db.table = 'test';
587
- // num = await db.field_name("last_time", 'last_time');
588
- // console.log("name结果:" + num);
589
- // if (num < 0) {
590
- // console.log("SQL:" + db.sql);
591
- // }
592
- // }
593
- // newName();
594
-
595
-
596
- // 测试实体模型
597
- // async function test_model() {
598
- // // 实例化一个mysql操作类
599
- // var sql = new Sqlite();
600
- // // 设置 数据库连接配置
601
- // var config = {
602
- // "host": "localhost",
603
- // "port": 3306,
604
- // "user": "root",
605
- // "password": "asd123",
606
- // "database": "mm"
607
- // };
608
- // sql.setConfig(config);
609
- // // 开启数据库连接
610
- // sql.open();
611
- // // 实例化一个数据库操作类
612
- // db = sql.db();
613
-
614
- // // 选择要查询的表
615
- // db.table = "user_account";
616
-
617
- // // 设置主键(可以不用设置, 设置之后查询的数据可以赋值同步)
618
- // db.key = "user_id";
619
-
620
- // // 通过对象查询数据, 第一个参数是对象(查询条件), 第二个是排序方式,第三个是查询的字段
621
- // var obj = await db.getObj({ username: "admin" }, null, 'username,vip,user_id');
622
-
623
- // // 调试输出生成的sql语句
624
- // console.log(db.sql);
625
- // // 调试输出查询结果
626
- // console.log(obj);
627
- // // 修改数据库中该条数据的vip字段值, 注意到数据库管理器查看数据库的变化
628
- // obj.vip = 5;
629
- // // 修改数据库中该条数据的gm字段值
630
- // obj.gm = 5;
631
- // // 修改数据库中该条数据的phone字段值
632
- // obj.phone = 333;
633
- // // 输出一下, 查看查询结果对象的变化, 对照数据库变化, 值是否一致
634
- // console.log(obj);
635
- // // obj.gm += 6;
636
-
637
- // // 查询列表
638
- // var list = await db.get({ username: "admin" });
639
- // // 判断查询结果是否有数据
640
- // if(list.length > 0)
641
- // {
642
- // // 取第一条数据
643
- // obj = list[0];
644
- // // 将数据对象转为实体模型, 实现和数据库同步
645
- // var o = db.model(obj);
646
- // // 修改该条数据的phone字段为15817188815
647
- // o.phone = '15817188815';
648
- // // 调试输出, 对比对象变化和数据库值是否一致
649
- // console.log(o);
650
- // }
651
- // console.log(db.sql);
652
- // }
653
-
654
- // test_model();
78
+ // 运行测试
79
+ (async function() {
80
+ await runAllTests();
81
+ })();