@dbml/connector 3.9.2-alpha.0 → 3.9.3

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.
Files changed (53) hide show
  1. package/.babelrc +0 -0
  2. package/LICENSE +0 -0
  3. package/README.md +0 -0
  4. package/__tests__/connector.test.ts +0 -0
  5. package/__tests__/connectors/bigquery/out-files/schema.json +565 -0
  6. package/__tests__/connectors/mssql/connection.json +0 -0
  7. package/__tests__/connectors/mssql/expect-out-files/schema.json +424 -424
  8. package/__tests__/connectors/mssql/out-files/schema.json +1858 -0
  9. package/__tests__/connectors/mysql/connection.json +0 -0
  10. package/__tests__/connectors/mysql/expect-out-files/schema.json +0 -0
  11. package/__tests__/connectors/mysql/out-files/schema.json +1390 -0
  12. package/__tests__/connectors/postgres/connection.json +0 -0
  13. package/__tests__/connectors/postgres/expect-out-files/schema.json +356 -356
  14. package/__tests__/connectors/postgres/out-files/schema.json +1619 -0
  15. package/dist/connectors/bigqueryConnector.d.ts +0 -0
  16. package/dist/connectors/bigqueryConnector.js +2 -7
  17. package/dist/connectors/connector.d.ts +0 -0
  18. package/dist/connectors/connector.js +0 -0
  19. package/dist/connectors/mssqlConnector.d.ts +0 -0
  20. package/dist/connectors/mssqlConnector.js +4 -2
  21. package/dist/connectors/mysqlConnector.d.ts +0 -0
  22. package/dist/connectors/mysqlConnector.js +0 -0
  23. package/dist/connectors/postgresConnector.d.ts +0 -0
  24. package/dist/connectors/postgresConnector.js +37 -19
  25. package/dist/connectors/snowflakeConnector.d.ts +0 -0
  26. package/dist/connectors/snowflakeConnector.js +1 -1
  27. package/dist/connectors/types.d.ts +0 -0
  28. package/dist/connectors/types.js +0 -0
  29. package/dist/index.d.ts +0 -0
  30. package/dist/index.js +0 -0
  31. package/dist/utils/credential-loader.d.ts +0 -0
  32. package/dist/utils/credential-loader.js +0 -0
  33. package/dist/utils/helpers.d.ts +0 -0
  34. package/dist/utils/helpers.js +0 -0
  35. package/dist/utils/parseSchema.d.ts +0 -0
  36. package/dist/utils/parseSchema.js +0 -0
  37. package/jest.config.ts +0 -0
  38. package/jestHelpers.ts +0 -0
  39. package/package.json +2 -2
  40. package/src/connectors/bigqueryConnector.ts +2 -7
  41. package/src/connectors/connector.ts +0 -0
  42. package/src/connectors/mssqlConnector.ts +4 -2
  43. package/src/connectors/mysqlConnector.ts +0 -0
  44. package/src/connectors/postgresConnector.ts +37 -19
  45. package/src/connectors/snowflakeConnector.ts +1 -1
  46. package/src/connectors/types.ts +0 -0
  47. package/src/ddl_samples/bigquery.sql +0 -0
  48. package/src/ddl_samples/snowflake.sql +0 -0
  49. package/src/index.ts +0 -0
  50. package/src/utils/credential-loader.ts +0 -0
  51. package/src/utils/helpers.ts +0 -0
  52. package/src/utils/parseSchema.ts +0 -0
  53. package/tsconfig.json +0 -0
@@ -15,84 +15,84 @@
15
15
  }
16
16
  },
17
17
  {
18
- "name": "all_default_values",
18
+ "name": "users",
19
19
  "schemaName": "public",
20
20
  "note": {
21
21
  "value": ""
22
22
  }
23
23
  },
24
24
  {
25
- "name": "all_string_types",
25
+ "name": "products",
26
26
  "schemaName": "public",
27
27
  "note": {
28
28
  "value": ""
29
29
  }
30
30
  },
31
31
  {
32
- "name": "authors",
32
+ "name": "orders",
33
33
  "schemaName": "public",
34
34
  "note": {
35
35
  "value": ""
36
36
  }
37
37
  },
38
38
  {
39
- "name": "books",
39
+ "name": "order_items",
40
40
  "schemaName": "public",
41
41
  "note": {
42
42
  "value": ""
43
43
  }
44
44
  },
45
45
  {
46
- "name": "order_items",
46
+ "name": "all_string_types",
47
47
  "schemaName": "public",
48
48
  "note": {
49
49
  "value": ""
50
50
  }
51
51
  },
52
52
  {
53
- "name": "orders",
53
+ "name": "all_default_values",
54
54
  "schemaName": "public",
55
55
  "note": {
56
56
  "value": ""
57
57
  }
58
58
  },
59
59
  {
60
- "name": "products",
60
+ "name": "user_define_data_types",
61
61
  "schemaName": "public",
62
62
  "note": {
63
63
  "value": ""
64
64
  }
65
65
  },
66
66
  {
67
- "name": "table1",
67
+ "name": "table_with_comments",
68
68
  "schemaName": "public",
69
69
  "note": {
70
- "value": ""
70
+ "value": "This table stores information about various items. Such as: 'id', 'name', 'description'"
71
71
  }
72
72
  },
73
73
  {
74
- "name": "table2",
74
+ "name": "authors",
75
75
  "schemaName": "public",
76
76
  "note": {
77
77
  "value": ""
78
78
  }
79
79
  },
80
80
  {
81
- "name": "table_with_comments",
81
+ "name": "books",
82
82
  "schemaName": "public",
83
83
  "note": {
84
- "value": "This table stores information about various items. Such as: 'id', 'name', 'description'"
84
+ "value": ""
85
85
  }
86
86
  },
87
87
  {
88
- "name": "user_define_data_types",
88
+ "name": "table1",
89
89
  "schemaName": "public",
90
90
  "note": {
91
91
  "value": ""
92
92
  }
93
93
  },
94
94
  {
95
- "name": "users",
95
+ "name": "table2",
96
96
  "schemaName": "public",
97
97
  "note": {
98
98
  "value": ""
@@ -156,9 +156,9 @@
156
156
  }
157
157
  }
158
158
  ],
159
- "public.all_default_values": [
159
+ "public.users": [
160
160
  {
161
- "name": "id",
161
+ "name": "user_id",
162
162
  "type": {
163
163
  "type_name": "int4",
164
164
  "schemaName": null
@@ -171,79 +171,51 @@
171
171
  }
172
172
  },
173
173
  {
174
- "name": "boolean_col",
175
- "type": {
176
- "type_name": "bool",
177
- "schemaName": null
178
- },
179
- "dbdefault": {
180
- "type": "boolean",
181
- "value": "true"
182
- },
183
- "not_null": false,
184
- "increment": false,
185
- "note": {
186
- "value": ""
187
- }
188
- },
189
- {
190
- "name": "integer_col",
174
+ "name": "username",
191
175
  "type": {
192
- "type_name": "int4",
176
+ "type_name": "varchar(50)",
193
177
  "schemaName": null
194
178
  },
195
- "dbdefault": {
196
- "type": "number",
197
- "value": "42"
198
- },
199
- "not_null": false,
179
+ "dbdefault": null,
180
+ "not_null": true,
200
181
  "increment": false,
201
182
  "note": {
202
183
  "value": ""
203
184
  }
204
185
  },
205
186
  {
206
- "name": "numeric_col",
187
+ "name": "email",
207
188
  "type": {
208
- "type_name": "numeric(10,2)",
189
+ "type_name": "varchar(100)",
209
190
  "schemaName": null
210
191
  },
211
- "dbdefault": {
212
- "type": "number",
213
- "value": "99.99"
214
- },
215
- "not_null": false,
192
+ "dbdefault": null,
193
+ "not_null": true,
216
194
  "increment": false,
217
195
  "note": {
218
196
  "value": ""
219
197
  }
220
198
  },
221
199
  {
222
- "name": "date_col",
200
+ "name": "password_hash",
223
201
  "type": {
224
- "type_name": "date",
202
+ "type_name": "varchar(255)",
225
203
  "schemaName": null
226
204
  },
227
- "dbdefault": {
228
- "type": "expression",
229
- "value": "CURRENT_DATE"
230
- },
231
- "not_null": false,
205
+ "dbdefault": null,
206
+ "not_null": true,
232
207
  "increment": false,
233
208
  "note": {
234
209
  "value": ""
235
210
  }
236
211
  },
237
212
  {
238
- "name": "date_col_specific",
213
+ "name": "first_name",
239
214
  "type": {
240
- "type_name": "date",
215
+ "type_name": "varchar(50)",
241
216
  "schemaName": null
242
217
  },
243
- "dbdefault": {
244
- "type": "string",
245
- "value": "2024-01-01"
246
- },
218
+ "dbdefault": null,
247
219
  "not_null": false,
248
220
  "increment": false,
249
221
  "note": {
@@ -251,15 +223,12 @@
251
223
  }
252
224
  },
253
225
  {
254
- "name": "timestamp_col",
226
+ "name": "last_name",
255
227
  "type": {
256
- "type_name": "timestamp",
228
+ "type_name": "varchar(50)",
257
229
  "schemaName": null
258
230
  },
259
- "dbdefault": {
260
- "type": "expression",
261
- "value": "CURRENT_TIMESTAMP"
262
- },
231
+ "dbdefault": null,
263
232
  "not_null": false,
264
233
  "increment": false,
265
234
  "note": {
@@ -267,15 +236,12 @@
267
236
  }
268
237
  },
269
238
  {
270
- "name": "timestamp_col_specific",
239
+ "name": "full_name",
271
240
  "type": {
272
- "type_name": "timestamp",
241
+ "type_name": "varchar(100)",
273
242
  "schemaName": null
274
243
  },
275
- "dbdefault": {
276
- "type": "string",
277
- "value": "2024-01-01 12:00:00"
278
- },
244
+ "dbdefault": null,
279
245
  "not_null": false,
280
246
  "increment": false,
281
247
  "note": {
@@ -283,15 +249,12 @@
283
249
  }
284
250
  },
285
251
  {
286
- "name": "date_plus_7_days",
252
+ "name": "date_of_birth",
287
253
  "type": {
288
254
  "type_name": "date",
289
255
  "schemaName": null
290
256
  },
291
- "dbdefault": {
292
- "type": "expression",
293
- "value": "(CURRENT_DATE + '7 days'::interval)"
294
- },
257
+ "dbdefault": null,
295
258
  "not_null": false,
296
259
  "increment": false,
297
260
  "note": {
@@ -299,14 +262,14 @@
299
262
  }
300
263
  },
301
264
  {
302
- "name": "date_minus_30_days",
265
+ "name": "created_at",
303
266
  "type": {
304
- "type_name": "date",
267
+ "type_name": "timestamptz",
305
268
  "schemaName": null
306
269
  },
307
270
  "dbdefault": {
308
271
  "type": "expression",
309
- "value": "(CURRENT_DATE - '30 days'::interval)"
272
+ "value": "CURRENT_TIMESTAMP"
310
273
  },
311
274
  "not_null": false,
312
275
  "increment": false,
@@ -315,15 +278,12 @@
315
278
  }
316
279
  },
317
280
  {
318
- "name": "timestamp_plus_1_hour",
281
+ "name": "last_login",
319
282
  "type": {
320
- "type_name": "timestamp",
283
+ "type_name": "timestamptz",
321
284
  "schemaName": null
322
285
  },
323
- "dbdefault": {
324
- "type": "expression",
325
- "value": "(CURRENT_TIMESTAMP + '01:00:00'::interval)"
326
- },
286
+ "dbdefault": null,
327
287
  "not_null": false,
328
288
  "increment": false,
329
289
  "note": {
@@ -331,14 +291,14 @@
331
291
  }
332
292
  },
333
293
  {
334
- "name": "timestamp_minus_15_minutes",
294
+ "name": "is_active",
335
295
  "type": {
336
- "type_name": "timestamp",
296
+ "type_name": "bool",
337
297
  "schemaName": null
338
298
  },
339
299
  "dbdefault": {
340
- "type": "expression",
341
- "value": "(CURRENT_TIMESTAMP - '00:15:00'::interval)"
300
+ "type": "boolean",
301
+ "value": "true"
342
302
  },
343
303
  "not_null": false,
344
304
  "increment": false,
@@ -347,65 +307,40 @@
347
307
  }
348
308
  }
349
309
  ],
350
- "public.all_string_types": [
310
+ "public.products": [
351
311
  {
352
- "name": "text_col",
312
+ "name": "product_id",
353
313
  "type": {
354
- "type_name": "text",
314
+ "type_name": "int4",
355
315
  "schemaName": null
356
316
  },
357
- "dbdefault": {
358
- "type": "string",
359
- "value": "default_text"
360
- },
361
- "not_null": false,
362
- "increment": false,
317
+ "dbdefault": null,
318
+ "not_null": true,
319
+ "increment": true,
363
320
  "note": {
364
321
  "value": ""
365
322
  }
366
323
  },
367
324
  {
368
- "name": "varchar_col",
325
+ "name": "name",
369
326
  "type": {
370
327
  "type_name": "varchar(100)",
371
328
  "schemaName": null
372
329
  },
373
- "dbdefault": {
374
- "type": "string",
375
- "value": "default_varchar"
376
- },
377
- "not_null": false,
378
- "increment": false,
379
- "note": {
380
- "value": ""
381
- }
382
- },
383
- {
384
- "name": "char_col",
385
- "type": {
386
- "type_name": "bpchar(10)",
387
- "schemaName": null
388
- },
389
- "dbdefault": {
390
- "type": "string",
391
- "value": "default_char"
392
- },
393
- "not_null": false,
330
+ "dbdefault": null,
331
+ "not_null": true,
394
332
  "increment": false,
395
333
  "note": {
396
334
  "value": ""
397
335
  }
398
336
  },
399
337
  {
400
- "name": "character_varying_col",
338
+ "name": "description",
401
339
  "type": {
402
- "type_name": "varchar(50)",
340
+ "type_name": "text",
403
341
  "schemaName": null
404
342
  },
405
- "dbdefault": {
406
- "type": "string",
407
- "value": "default_character_varying"
408
- },
343
+ "dbdefault": null,
409
344
  "not_null": false,
410
345
  "increment": false,
411
346
  "note": {
@@ -413,47 +348,41 @@
413
348
  }
414
349
  },
415
350
  {
416
- "name": "character_col",
351
+ "name": "price",
417
352
  "type": {
418
- "type_name": "bpchar(5)",
353
+ "type_name": "numeric(10,2)",
419
354
  "schemaName": null
420
355
  },
421
- "dbdefault": {
422
- "type": "string",
423
- "value": "default_character"
424
- },
425
- "not_null": false,
356
+ "dbdefault": null,
357
+ "not_null": true,
426
358
  "increment": false,
427
359
  "note": {
428
360
  "value": ""
429
361
  }
430
362
  },
431
363
  {
432
- "name": "name_col",
364
+ "name": "stock_quantity",
433
365
  "type": {
434
- "type_name": "name",
366
+ "type_name": "int4",
435
367
  "schemaName": null
436
368
  },
437
369
  "dbdefault": {
438
- "type": "string",
439
- "value": "default_name"
370
+ "type": "number",
371
+ "value": "0"
440
372
  },
441
- "not_null": false,
373
+ "not_null": true,
442
374
  "increment": false,
443
375
  "note": {
444
376
  "value": ""
445
377
  }
446
378
  },
447
379
  {
448
- "name": "bpchar_col",
380
+ "name": "category",
449
381
  "type": {
450
- "type_name": "bpchar(15)",
382
+ "type_name": "varchar(50)",
451
383
  "schemaName": null
452
384
  },
453
- "dbdefault": {
454
- "type": "string",
455
- "value": "default_bpchar"
456
- },
385
+ "dbdefault": null,
457
386
  "not_null": false,
458
387
  "increment": false,
459
388
  "note": {
@@ -461,14 +390,14 @@
461
390
  }
462
391
  },
463
392
  {
464
- "name": "text_array_col",
393
+ "name": "created_at",
465
394
  "type": {
466
- "type_name": "text[]",
395
+ "type_name": "timestamptz",
467
396
  "schemaName": null
468
397
  },
469
398
  "dbdefault": {
470
399
  "type": "expression",
471
- "value": "ARRAY['default_text1', 'default_text2']"
400
+ "value": "CURRENT_TIMESTAMP"
472
401
  },
473
402
  "not_null": false,
474
403
  "increment": false,
@@ -477,14 +406,14 @@
477
406
  }
478
407
  },
479
408
  {
480
- "name": "json_col",
409
+ "name": "updated_at",
481
410
  "type": {
482
- "type_name": "json",
411
+ "type_name": "timestamptz",
483
412
  "schemaName": null
484
413
  },
485
414
  "dbdefault": {
486
415
  "type": "expression",
487
- "value": "{\"default_key\": \"default_value\"}"
416
+ "value": "CURRENT_TIMESTAMP"
488
417
  },
489
418
  "not_null": false,
490
419
  "increment": false,
@@ -493,14 +422,14 @@
493
422
  }
494
423
  },
495
424
  {
496
- "name": "jsonb_col",
425
+ "name": "is_available",
497
426
  "type": {
498
- "type_name": "jsonb",
427
+ "type_name": "bool",
499
428
  "schemaName": null
500
429
  },
501
430
  "dbdefault": {
502
- "type": "expression",
503
- "value": "{\"default_key\": \"default_value\"}"
431
+ "type": "boolean",
432
+ "value": "true"
504
433
  },
505
434
  "not_null": false,
506
435
  "increment": false,
@@ -509,9 +438,9 @@
509
438
  }
510
439
  }
511
440
  ],
512
- "public.authors": [
441
+ "public.orders": [
513
442
  {
514
- "name": "authorid",
443
+ "name": "order_id",
515
444
  "type": {
516
445
  "type_name": "int4",
517
446
  "schemaName": null
@@ -524,7 +453,7 @@
524
453
  }
525
454
  },
526
455
  {
527
- "name": "nationalityid",
456
+ "name": "user_id",
528
457
  "type": {
529
458
  "type_name": "int4",
530
459
  "schemaName": null
@@ -537,12 +466,15 @@
537
466
  }
538
467
  },
539
468
  {
540
- "name": "authorname",
469
+ "name": "order_date",
541
470
  "type": {
542
- "type_name": "varchar(100)",
471
+ "type_name": "timestamptz",
543
472
  "schemaName": null
544
473
  },
545
- "dbdefault": null,
474
+ "dbdefault": {
475
+ "type": "expression",
476
+ "value": "CURRENT_TIMESTAMP"
477
+ },
546
478
  "not_null": false,
547
479
  "increment": false,
548
480
  "note": {
@@ -550,53 +482,28 @@
550
482
  }
551
483
  },
552
484
  {
553
- "name": "birthyear",
485
+ "name": "total_amount",
554
486
  "type": {
555
- "type_name": "int4",
556
- "schemaName": null
557
- },
558
- "dbdefault": null,
559
- "not_null": false,
560
- "increment": false,
561
- "note": {
562
- "value": ""
563
- }
564
- }
565
- ],
566
- "public.books": [
567
- {
568
- "name": "bookid",
569
- "type": {
570
- "type_name": "int4",
487
+ "type_name": "numeric(12,2)",
571
488
  "schemaName": null
572
489
  },
573
490
  "dbdefault": null,
574
491
  "not_null": true,
575
- "increment": true,
576
- "note": {
577
- "value": ""
578
- }
579
- },
580
- {
581
- "name": "authorid",
582
- "type": {
583
- "type_name": "int4",
584
- "schemaName": null
585
- },
586
- "dbdefault": null,
587
- "not_null": false,
588
492
  "increment": false,
589
493
  "note": {
590
494
  "value": ""
591
495
  }
592
496
  },
593
497
  {
594
- "name": "nationalityid",
498
+ "name": "status",
595
499
  "type": {
596
- "type_name": "int4",
500
+ "type_name": "varchar(20)",
597
501
  "schemaName": null
598
502
  },
599
- "dbdefault": null,
503
+ "dbdefault": {
504
+ "type": "string",
505
+ "value": "pending"
506
+ },
600
507
  "not_null": false,
601
508
  "increment": false,
602
509
  "note": {
@@ -604,26 +511,26 @@
604
511
  }
605
512
  },
606
513
  {
607
- "name": "isbn",
514
+ "name": "shipping_address",
608
515
  "type": {
609
- "type_name": "varchar(20)",
516
+ "type_name": "text",
610
517
  "schemaName": null
611
518
  },
612
519
  "dbdefault": null,
613
- "not_null": false,
520
+ "not_null": true,
614
521
  "increment": false,
615
522
  "note": {
616
523
  "value": ""
617
524
  }
618
525
  },
619
526
  {
620
- "name": "title",
527
+ "name": "billing_address",
621
528
  "type": {
622
- "type_name": "varchar(200)",
529
+ "type_name": "text",
623
530
  "schemaName": null
624
531
  },
625
532
  "dbdefault": null,
626
- "not_null": false,
533
+ "not_null": true,
627
534
  "increment": false,
628
535
  "note": {
629
536
  "value": ""
@@ -697,42 +604,48 @@
697
604
  }
698
605
  }
699
606
  ],
700
- "public.orders": [
607
+ "public.all_string_types": [
701
608
  {
702
- "name": "order_id",
609
+ "name": "text_col",
703
610
  "type": {
704
- "type_name": "int4",
611
+ "type_name": "text",
705
612
  "schemaName": null
706
613
  },
707
- "dbdefault": null,
708
- "not_null": true,
709
- "increment": true,
614
+ "dbdefault": {
615
+ "type": "string",
616
+ "value": "default_text"
617
+ },
618
+ "not_null": false,
619
+ "increment": false,
710
620
  "note": {
711
621
  "value": ""
712
622
  }
713
623
  },
714
624
  {
715
- "name": "user_id",
625
+ "name": "varchar_col",
716
626
  "type": {
717
- "type_name": "int4",
627
+ "type_name": "varchar(100)",
718
628
  "schemaName": null
719
629
  },
720
- "dbdefault": null,
721
- "not_null": true,
630
+ "dbdefault": {
631
+ "type": "string",
632
+ "value": "default_varchar"
633
+ },
634
+ "not_null": false,
722
635
  "increment": false,
723
636
  "note": {
724
637
  "value": ""
725
638
  }
726
639
  },
727
640
  {
728
- "name": "order_date",
641
+ "name": "char_col",
729
642
  "type": {
730
- "type_name": "timestamptz",
643
+ "type_name": "bpchar(10)",
731
644
  "schemaName": null
732
645
  },
733
646
  "dbdefault": {
734
- "type": "expression",
735
- "value": "CURRENT_TIMESTAMP"
647
+ "type": "string",
648
+ "value": "default_char"
736
649
  },
737
650
  "not_null": false,
738
651
  "increment": false,
@@ -741,27 +654,30 @@
741
654
  }
742
655
  },
743
656
  {
744
- "name": "total_amount",
657
+ "name": "character_varying_col",
745
658
  "type": {
746
- "type_name": "numeric(12,2)",
659
+ "type_name": "varchar(50)",
747
660
  "schemaName": null
748
661
  },
749
- "dbdefault": null,
750
- "not_null": true,
662
+ "dbdefault": {
663
+ "type": "string",
664
+ "value": "default_character_varying"
665
+ },
666
+ "not_null": false,
751
667
  "increment": false,
752
668
  "note": {
753
669
  "value": ""
754
670
  }
755
671
  },
756
672
  {
757
- "name": "status",
673
+ "name": "character_col",
758
674
  "type": {
759
- "type_name": "varchar(20)",
675
+ "type_name": "bpchar(5)",
760
676
  "schemaName": null
761
677
  },
762
678
  "dbdefault": {
763
679
  "type": "string",
764
- "value": "pending"
680
+ "value": "default_character"
765
681
  },
766
682
  "not_null": false,
767
683
  "increment": false,
@@ -770,108 +686,126 @@
770
686
  }
771
687
  },
772
688
  {
773
- "name": "shipping_address",
689
+ "name": "name_col",
774
690
  "type": {
775
- "type_name": "text",
691
+ "type_name": "name",
776
692
  "schemaName": null
777
693
  },
778
- "dbdefault": null,
779
- "not_null": true,
694
+ "dbdefault": {
695
+ "type": "string",
696
+ "value": "default_name"
697
+ },
698
+ "not_null": false,
780
699
  "increment": false,
781
700
  "note": {
782
701
  "value": ""
783
702
  }
784
703
  },
785
704
  {
786
- "name": "billing_address",
705
+ "name": "bpchar_col",
787
706
  "type": {
788
- "type_name": "text",
707
+ "type_name": "bpchar(15)",
789
708
  "schemaName": null
790
709
  },
791
- "dbdefault": null,
792
- "not_null": true,
710
+ "dbdefault": {
711
+ "type": "string",
712
+ "value": "default_bpchar"
713
+ },
714
+ "not_null": false,
793
715
  "increment": false,
794
716
  "note": {
795
717
  "value": ""
796
718
  }
797
- }
798
- ],
799
- "public.products": [
719
+ },
800
720
  {
801
- "name": "product_id",
721
+ "name": "text_array_col",
802
722
  "type": {
803
- "type_name": "int4",
723
+ "type_name": "text[]",
804
724
  "schemaName": null
805
725
  },
806
- "dbdefault": null,
807
- "not_null": true,
808
- "increment": true,
726
+ "dbdefault": {
727
+ "type": "expression",
728
+ "value": "ARRAY['default_text1', 'default_text2']"
729
+ },
730
+ "not_null": false,
731
+ "increment": false,
809
732
  "note": {
810
733
  "value": ""
811
734
  }
812
735
  },
813
736
  {
814
- "name": "name",
737
+ "name": "json_col",
815
738
  "type": {
816
- "type_name": "varchar(100)",
739
+ "type_name": "json",
817
740
  "schemaName": null
818
741
  },
819
- "dbdefault": null,
820
- "not_null": true,
742
+ "dbdefault": {
743
+ "type": "expression",
744
+ "value": "{\"default_key\": \"default_value\"}"
745
+ },
746
+ "not_null": false,
821
747
  "increment": false,
822
748
  "note": {
823
749
  "value": ""
824
750
  }
825
751
  },
826
752
  {
827
- "name": "description",
753
+ "name": "jsonb_col",
828
754
  "type": {
829
- "type_name": "text",
755
+ "type_name": "jsonb",
830
756
  "schemaName": null
831
757
  },
832
- "dbdefault": null,
758
+ "dbdefault": {
759
+ "type": "expression",
760
+ "value": "{\"default_key\": \"default_value\"}"
761
+ },
833
762
  "not_null": false,
834
763
  "increment": false,
835
764
  "note": {
836
765
  "value": ""
837
766
  }
838
- },
767
+ }
768
+ ],
769
+ "public.all_default_values": [
839
770
  {
840
- "name": "price",
771
+ "name": "id",
841
772
  "type": {
842
- "type_name": "numeric(10,2)",
773
+ "type_name": "int4",
843
774
  "schemaName": null
844
775
  },
845
776
  "dbdefault": null,
846
777
  "not_null": true,
847
- "increment": false,
778
+ "increment": true,
848
779
  "note": {
849
780
  "value": ""
850
781
  }
851
782
  },
852
783
  {
853
- "name": "stock_quantity",
784
+ "name": "boolean_col",
854
785
  "type": {
855
- "type_name": "int4",
786
+ "type_name": "bool",
856
787
  "schemaName": null
857
788
  },
858
789
  "dbdefault": {
859
- "type": "number",
860
- "value": "0"
790
+ "type": "boolean",
791
+ "value": "true"
861
792
  },
862
- "not_null": true,
793
+ "not_null": false,
863
794
  "increment": false,
864
795
  "note": {
865
796
  "value": ""
866
797
  }
867
798
  },
868
799
  {
869
- "name": "category",
800
+ "name": "integer_col",
870
801
  "type": {
871
- "type_name": "varchar(50)",
802
+ "type_name": "int4",
872
803
  "schemaName": null
873
804
  },
874
- "dbdefault": null,
805
+ "dbdefault": {
806
+ "type": "number",
807
+ "value": "42"
808
+ },
875
809
  "not_null": false,
876
810
  "increment": false,
877
811
  "note": {
@@ -879,14 +813,14 @@
879
813
  }
880
814
  },
881
815
  {
882
- "name": "created_at",
816
+ "name": "numeric_col",
883
817
  "type": {
884
- "type_name": "timestamptz",
818
+ "type_name": "numeric(10,2)",
885
819
  "schemaName": null
886
820
  },
887
821
  "dbdefault": {
888
- "type": "expression",
889
- "value": "CURRENT_TIMESTAMP"
822
+ "type": "number",
823
+ "value": "99.99"
890
824
  },
891
825
  "not_null": false,
892
826
  "increment": false,
@@ -895,14 +829,14 @@
895
829
  }
896
830
  },
897
831
  {
898
- "name": "updated_at",
832
+ "name": "date_col",
899
833
  "type": {
900
- "type_name": "timestamptz",
834
+ "type_name": "date",
901
835
  "schemaName": null
902
836
  },
903
837
  "dbdefault": {
904
838
  "type": "expression",
905
- "value": "CURRENT_TIMESTAMP"
839
+ "value": "CURRENT_DATE"
906
840
  },
907
841
  "not_null": false,
908
842
  "increment": false,
@@ -911,132 +845,115 @@
911
845
  }
912
846
  },
913
847
  {
914
- "name": "is_available",
848
+ "name": "date_col_specific",
915
849
  "type": {
916
- "type_name": "bool",
850
+ "type_name": "date",
917
851
  "schemaName": null
918
852
  },
919
853
  "dbdefault": {
920
- "type": "boolean",
921
- "value": "true"
854
+ "type": "string",
855
+ "value": "2024-01-01"
922
856
  },
923
857
  "not_null": false,
924
858
  "increment": false,
925
859
  "note": {
926
860
  "value": ""
927
861
  }
928
- }
929
- ],
930
- "public.table1": [
862
+ },
931
863
  {
932
- "name": "id",
864
+ "name": "timestamp_col",
933
865
  "type": {
934
- "type_name": "int4",
866
+ "type_name": "timestamp",
935
867
  "schemaName": null
936
868
  },
937
- "dbdefault": null,
938
- "not_null": true,
939
- "increment": true,
940
- "note": {
941
- "value": ""
942
- }
943
- },
944
- {
945
- "name": "status",
946
- "type": {
947
- "type_name": "enum_type1",
948
- "schemaName": "public"
869
+ "dbdefault": {
870
+ "type": "expression",
871
+ "value": "CURRENT_TIMESTAMP"
949
872
  },
950
- "dbdefault": null,
951
873
  "not_null": false,
952
874
  "increment": false,
953
875
  "note": {
954
876
  "value": ""
955
877
  }
956
- }
957
- ],
958
- "public.table2": [
878
+ },
959
879
  {
960
- "name": "id",
880
+ "name": "timestamp_col_specific",
961
881
  "type": {
962
- "type_name": "int4",
882
+ "type_name": "timestamp",
963
883
  "schemaName": null
964
884
  },
965
- "dbdefault": null,
966
- "not_null": true,
967
- "increment": true,
968
- "note": {
969
- "value": ""
970
- }
971
- },
972
- {
973
- "name": "status",
974
- "type": {
975
- "type_name": "enum_type2",
976
- "schemaName": "public"
885
+ "dbdefault": {
886
+ "type": "string",
887
+ "value": "2024-01-01 12:00:00"
977
888
  },
978
- "dbdefault": null,
979
889
  "not_null": false,
980
890
  "increment": false,
981
891
  "note": {
982
892
  "value": ""
983
893
  }
984
- }
985
- ],
986
- "public.table_with_comments": [
894
+ },
987
895
  {
988
- "name": "id",
896
+ "name": "date_plus_7_days",
989
897
  "type": {
990
- "type_name": "int4",
898
+ "type_name": "date",
991
899
  "schemaName": null
992
900
  },
993
- "dbdefault": null,
994
- "not_null": true,
995
- "increment": true,
901
+ "dbdefault": {
902
+ "type": "expression",
903
+ "value": "(CURRENT_DATE + '7 days'::interval)"
904
+ },
905
+ "not_null": false,
906
+ "increment": false,
996
907
  "note": {
997
- "value": "Unique identifier for each item."
908
+ "value": ""
998
909
  }
999
910
  },
1000
911
  {
1001
- "name": "name",
912
+ "name": "date_minus_30_days",
1002
913
  "type": {
1003
- "type_name": "varchar(100)",
914
+ "type_name": "date",
1004
915
  "schemaName": null
1005
916
  },
1006
- "dbdefault": null,
917
+ "dbdefault": {
918
+ "type": "expression",
919
+ "value": "(CURRENT_DATE - '30 days'::interval)"
920
+ },
1007
921
  "not_null": false,
1008
922
  "increment": false,
1009
923
  "note": {
1010
- "value": "Item's name."
924
+ "value": ""
1011
925
  }
1012
926
  },
1013
927
  {
1014
- "name": "description",
928
+ "name": "timestamp_plus_1_hour",
1015
929
  "type": {
1016
- "type_name": "text",
930
+ "type_name": "timestamp",
1017
931
  "schemaName": null
1018
932
  },
1019
- "dbdefault": null,
933
+ "dbdefault": {
934
+ "type": "expression",
935
+ "value": "(CURRENT_TIMESTAMP + '01:00:00'::interval)"
936
+ },
1020
937
  "not_null": false,
1021
938
  "increment": false,
1022
939
  "note": {
1023
- "value": "Item's description"
940
+ "value": ""
1024
941
  }
1025
942
  },
1026
943
  {
1027
- "name": "created_at",
944
+ "name": "timestamp_minus_15_minutes",
1028
945
  "type": {
1029
- "type_name": "timestamptz",
946
+ "type_name": "timestamp",
1030
947
  "schemaName": null
1031
948
  },
1032
949
  "dbdefault": {
1033
950
  "type": "expression",
1034
- "value": "CURRENT_TIMESTAMP"
951
+ "value": "(CURRENT_TIMESTAMP - '00:15:00'::interval)"
1035
952
  },
1036
953
  "not_null": false,
1037
954
  "increment": false,
1038
955
  "note": {
1039
- "value": "Timestamp when the item was created."
956
+ "value": ""
1040
957
  }
1041
958
  }
1042
959
  ],
@@ -1120,9 +1037,9 @@
1120
1037
  }
1121
1038
  }
1122
1039
  ],
1123
- "public.users": [
1040
+ "public.table_with_comments": [
1124
1041
  {
1125
- "name": "user_id",
1042
+ "name": "id",
1126
1043
  "type": {
1127
1044
  "type_name": "int4",
1128
1045
  "schemaName": null
@@ -1131,39 +1048,70 @@
1131
1048
  "not_null": true,
1132
1049
  "increment": true,
1133
1050
  "note": {
1134
- "value": ""
1051
+ "value": "Unique identifier for each item."
1135
1052
  }
1136
1053
  },
1137
1054
  {
1138
- "name": "username",
1055
+ "name": "name",
1139
1056
  "type": {
1140
- "type_name": "varchar(50)",
1057
+ "type_name": "varchar(100)",
1141
1058
  "schemaName": null
1142
1059
  },
1143
1060
  "dbdefault": null,
1144
- "not_null": true,
1061
+ "not_null": false,
1145
1062
  "increment": false,
1146
1063
  "note": {
1147
- "value": ""
1064
+ "value": "Item's name."
1148
1065
  }
1149
1066
  },
1150
1067
  {
1151
- "name": "email",
1068
+ "name": "description",
1152
1069
  "type": {
1153
- "type_name": "varchar(100)",
1070
+ "type_name": "text",
1154
1071
  "schemaName": null
1155
1072
  },
1156
1073
  "dbdefault": null,
1157
- "not_null": true,
1074
+ "not_null": false,
1075
+ "increment": false,
1076
+ "note": {
1077
+ "value": "Item's description"
1078
+ }
1079
+ },
1080
+ {
1081
+ "name": "created_at",
1082
+ "type": {
1083
+ "type_name": "timestamptz",
1084
+ "schemaName": null
1085
+ },
1086
+ "dbdefault": {
1087
+ "type": "expression",
1088
+ "value": "CURRENT_TIMESTAMP"
1089
+ },
1090
+ "not_null": false,
1158
1091
  "increment": false,
1092
+ "note": {
1093
+ "value": "Timestamp when the item was created."
1094
+ }
1095
+ }
1096
+ ],
1097
+ "public.authors": [
1098
+ {
1099
+ "name": "authorid",
1100
+ "type": {
1101
+ "type_name": "int4",
1102
+ "schemaName": null
1103
+ },
1104
+ "dbdefault": null,
1105
+ "not_null": true,
1106
+ "increment": true,
1159
1107
  "note": {
1160
1108
  "value": ""
1161
1109
  }
1162
1110
  },
1163
1111
  {
1164
- "name": "password_hash",
1112
+ "name": "nationalityid",
1165
1113
  "type": {
1166
- "type_name": "varchar(255)",
1114
+ "type_name": "int4",
1167
1115
  "schemaName": null
1168
1116
  },
1169
1117
  "dbdefault": null,
@@ -1174,9 +1122,9 @@
1174
1122
  }
1175
1123
  },
1176
1124
  {
1177
- "name": "first_name",
1125
+ "name": "authorname",
1178
1126
  "type": {
1179
- "type_name": "varchar(50)",
1127
+ "type_name": "varchar(100)",
1180
1128
  "schemaName": null
1181
1129
  },
1182
1130
  "dbdefault": null,
@@ -1187,9 +1135,9 @@
1187
1135
  }
1188
1136
  },
1189
1137
  {
1190
- "name": "last_name",
1138
+ "name": "birthyear",
1191
1139
  "type": {
1192
- "type_name": "varchar(50)",
1140
+ "type_name": "int4",
1193
1141
  "schemaName": null
1194
1142
  },
1195
1143
  "dbdefault": null,
@@ -1198,11 +1146,26 @@
1198
1146
  "note": {
1199
1147
  "value": ""
1200
1148
  }
1149
+ }
1150
+ ],
1151
+ "public.books": [
1152
+ {
1153
+ "name": "bookid",
1154
+ "type": {
1155
+ "type_name": "int4",
1156
+ "schemaName": null
1157
+ },
1158
+ "dbdefault": null,
1159
+ "not_null": true,
1160
+ "increment": true,
1161
+ "note": {
1162
+ "value": ""
1163
+ }
1201
1164
  },
1202
1165
  {
1203
- "name": "full_name",
1166
+ "name": "authorid",
1204
1167
  "type": {
1205
- "type_name": "varchar(100)",
1168
+ "type_name": "int4",
1206
1169
  "schemaName": null
1207
1170
  },
1208
1171
  "dbdefault": null,
@@ -1213,9 +1176,9 @@
1213
1176
  }
1214
1177
  },
1215
1178
  {
1216
- "name": "date_of_birth",
1179
+ "name": "nationalityid",
1217
1180
  "type": {
1218
- "type_name": "date",
1181
+ "type_name": "int4",
1219
1182
  "schemaName": null
1220
1183
  },
1221
1184
  "dbdefault": null,
@@ -1226,15 +1189,12 @@
1226
1189
  }
1227
1190
  },
1228
1191
  {
1229
- "name": "created_at",
1192
+ "name": "isbn",
1230
1193
  "type": {
1231
- "type_name": "timestamptz",
1194
+ "type_name": "varchar(20)",
1232
1195
  "schemaName": null
1233
1196
  },
1234
- "dbdefault": {
1235
- "type": "expression",
1236
- "value": "CURRENT_TIMESTAMP"
1237
- },
1197
+ "dbdefault": null,
1238
1198
  "not_null": false,
1239
1199
  "increment": false,
1240
1200
  "note": {
@@ -1242,9 +1202,9 @@
1242
1202
  }
1243
1203
  },
1244
1204
  {
1245
- "name": "last_login",
1205
+ "name": "title",
1246
1206
  "type": {
1247
- "type_name": "timestamptz",
1207
+ "type_name": "varchar(200)",
1248
1208
  "schemaName": null
1249
1209
  },
1250
1210
  "dbdefault": null,
@@ -1253,17 +1213,57 @@
1253
1213
  "note": {
1254
1214
  "value": ""
1255
1215
  }
1216
+ }
1217
+ ],
1218
+ "public.table1": [
1219
+ {
1220
+ "name": "id",
1221
+ "type": {
1222
+ "type_name": "int4",
1223
+ "schemaName": null
1224
+ },
1225
+ "dbdefault": null,
1226
+ "not_null": true,
1227
+ "increment": true,
1228
+ "note": {
1229
+ "value": ""
1230
+ }
1256
1231
  },
1257
1232
  {
1258
- "name": "is_active",
1233
+ "name": "status",
1259
1234
  "type": {
1260
- "type_name": "bool",
1235
+ "type_name": "enum_type1",
1236
+ "schemaName": "public"
1237
+ },
1238
+ "dbdefault": null,
1239
+ "not_null": false,
1240
+ "increment": false,
1241
+ "note": {
1242
+ "value": ""
1243
+ }
1244
+ }
1245
+ ],
1246
+ "public.table2": [
1247
+ {
1248
+ "name": "id",
1249
+ "type": {
1250
+ "type_name": "int4",
1261
1251
  "schemaName": null
1262
1252
  },
1263
- "dbdefault": {
1264
- "type": "boolean",
1265
- "value": "true"
1253
+ "dbdefault": null,
1254
+ "not_null": true,
1255
+ "increment": true,
1256
+ "note": {
1257
+ "value": ""
1258
+ }
1259
+ },
1260
+ {
1261
+ "name": "status",
1262
+ "type": {
1263
+ "type_name": "enum_type2",
1264
+ "schemaName": "public"
1266
1265
  },
1266
+ "dbdefault": null,
1267
1267
  "not_null": false,
1268
1268
  "increment": false,
1269
1269
  "note": {