@dbml/connector 5.4.0 → 5.4.1

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 (74) hide show
  1. package/.babelrc +0 -0
  2. package/LICENSE +0 -0
  3. package/README.md +0 -0
  4. package/__tests__/connector.test.ts +2 -2
  5. package/__tests__/connectors/mssql/connection.json +0 -0
  6. package/__tests__/connectors/mssql/expect-out-files/schema.json +0 -0
  7. package/__tests__/connectors/mssql/out-files/schema.json +2165 -0
  8. package/__tests__/connectors/mysql/connection.json +0 -0
  9. package/__tests__/connectors/mysql/expect-out-files/schema.json +0 -0
  10. package/__tests__/connectors/mysql/out-files/schema.json +1520 -0
  11. package/__tests__/connectors/oracle/connection.json +0 -0
  12. package/__tests__/connectors/oracle/expect-out-files/schema.json +0 -0
  13. package/__tests__/connectors/oracle/out-files/schema.json +3866 -0
  14. package/__tests__/connectors/postgres/connection.json +0 -0
  15. package/__tests__/connectors/postgres/expect-out-files/schema.json +0 -0
  16. package/__tests__/connectors/postgres/out-files/schema.json +1830 -0
  17. package/{jestHelpers.ts → __tests__/testHelpers.ts} +2 -6
  18. package/dist/connectors/bigquery/index.d.ts +0 -0
  19. package/dist/connectors/bigquery/index.js +0 -0
  20. package/dist/connectors/connector.d.ts +0 -0
  21. package/dist/connectors/connector.js +0 -0
  22. package/dist/connectors/mssql/index.d.ts +0 -0
  23. package/dist/connectors/mssql/index.js +26 -21
  24. package/dist/connectors/mysql/index.d.ts +0 -0
  25. package/dist/connectors/mysql/index.js +34 -30
  26. package/dist/connectors/oracle/constraints.d.ts +0 -0
  27. package/dist/connectors/oracle/constraints.js +0 -0
  28. package/dist/connectors/oracle/index.d.ts +0 -0
  29. package/dist/connectors/oracle/index.js +0 -0
  30. package/dist/connectors/oracle/indexes.d.ts +0 -0
  31. package/dist/connectors/oracle/indexes.js +0 -0
  32. package/dist/connectors/oracle/refs.d.ts +0 -0
  33. package/dist/connectors/oracle/refs.js +0 -0
  34. package/dist/connectors/oracle/tables.d.ts +0 -0
  35. package/dist/connectors/oracle/tables.js +0 -0
  36. package/dist/connectors/oracle/utils.d.ts +0 -0
  37. package/dist/connectors/oracle/utils.js +0 -0
  38. package/dist/connectors/postgres/index.d.ts +0 -0
  39. package/dist/connectors/postgres/index.js +28 -24
  40. package/dist/connectors/snowflake/index.d.ts +0 -0
  41. package/dist/connectors/snowflake/index.js +0 -0
  42. package/dist/connectors/types.d.ts +0 -0
  43. package/dist/connectors/types.js +0 -0
  44. package/dist/index.d.ts +0 -0
  45. package/dist/index.js +0 -0
  46. package/dist/utils/credential-loader.d.ts +0 -0
  47. package/dist/utils/credential-loader.js +0 -0
  48. package/dist/utils/helpers.d.ts +0 -0
  49. package/dist/utils/helpers.js +0 -0
  50. package/dist/utils/parseSchema.d.ts +0 -0
  51. package/dist/utils/parseSchema.js +0 -0
  52. package/eslint.config.ts +1 -1
  53. package/jest.config.ts +9 -1
  54. package/package.json +4 -3
  55. package/src/connectors/bigquery/index.ts +0 -0
  56. package/src/connectors/connector.ts +0 -0
  57. package/src/connectors/mssql/index.ts +28 -24
  58. package/src/connectors/mysql/index.ts +41 -38
  59. package/src/connectors/oracle/constraints.ts +0 -0
  60. package/src/connectors/oracle/index.ts +0 -0
  61. package/src/connectors/oracle/indexes.ts +0 -0
  62. package/src/connectors/oracle/refs.ts +0 -0
  63. package/src/connectors/oracle/tables.ts +0 -0
  64. package/src/connectors/oracle/utils.ts +0 -0
  65. package/src/connectors/postgres/index.ts +29 -26
  66. package/src/connectors/snowflake/index.ts +0 -0
  67. package/src/connectors/types.ts +0 -0
  68. package/src/ddl_samples/bigquery.sql +0 -0
  69. package/src/ddl_samples/snowflake.sql +0 -0
  70. package/src/index.ts +0 -0
  71. package/src/utils/credential-loader.ts +0 -0
  72. package/src/utils/helpers.ts +0 -0
  73. package/src/utils/parseSchema.ts +0 -0
  74. package/tsconfig.json +0 -0
@@ -0,0 +1,2165 @@
1
+ {
2
+ "tables": [
3
+ {
4
+ "name": "users",
5
+ "schemaName": "dbo",
6
+ "note": {
7
+ "value": ""
8
+ }
9
+ },
10
+ {
11
+ "name": "products",
12
+ "schemaName": "dbo",
13
+ "note": {
14
+ "value": ""
15
+ }
16
+ },
17
+ {
18
+ "name": "orders",
19
+ "schemaName": "dbo",
20
+ "note": {
21
+ "value": ""
22
+ }
23
+ },
24
+ {
25
+ "name": "order_items",
26
+ "schemaName": "dbo",
27
+ "note": {
28
+ "value": ""
29
+ }
30
+ },
31
+ {
32
+ "name": "StringTypes",
33
+ "schemaName": "dbo",
34
+ "note": {
35
+ "value": ""
36
+ }
37
+ },
38
+ {
39
+ "name": "NumberTypes",
40
+ "schemaName": "dbo",
41
+ "note": {
42
+ "value": ""
43
+ }
44
+ },
45
+ {
46
+ "name": "NumberTypesNoDefault",
47
+ "schemaName": "dbo",
48
+ "note": {
49
+ "value": ""
50
+ }
51
+ },
52
+ {
53
+ "name": "DatetimeTypes",
54
+ "schemaName": "dbo",
55
+ "note": {
56
+ "value": ""
57
+ }
58
+ },
59
+ {
60
+ "name": "ObjectTypes",
61
+ "schemaName": "dbo",
62
+ "note": {
63
+ "value": ""
64
+ }
65
+ },
66
+ {
67
+ "name": "gender_reference",
68
+ "schemaName": "dbo",
69
+ "note": {
70
+ "value": ""
71
+ }
72
+ },
73
+ {
74
+ "name": "user_define_data_types",
75
+ "schemaName": "dbo",
76
+ "note": {
77
+ "value": ""
78
+ }
79
+ },
80
+ {
81
+ "name": "table_with_comments",
82
+ "schemaName": "dbo",
83
+ "note": {
84
+ "value": "This table stores information about various items."
85
+ }
86
+ },
87
+ {
88
+ "name": "table_with_composite_primary_and_unique_indexes",
89
+ "schemaName": "dbo",
90
+ "note": {
91
+ "value": ""
92
+ }
93
+ },
94
+ {
95
+ "name": "Authors",
96
+ "schemaName": "dbo",
97
+ "note": {
98
+ "value": ""
99
+ }
100
+ },
101
+ {
102
+ "name": "Books",
103
+ "schemaName": "dbo",
104
+ "note": {
105
+ "value": ""
106
+ }
107
+ },
108
+ {
109
+ "name": "AddressInfo",
110
+ "schemaName": "dbo",
111
+ "note": {
112
+ "value": ""
113
+ }
114
+ },
115
+ {
116
+ "name": "AddressInfo2",
117
+ "schemaName": "dbo",
118
+ "note": {
119
+ "value": ""
120
+ }
121
+ },
122
+ {
123
+ "name": "TestDescriptionTable",
124
+ "schemaName": "dbo",
125
+ "note": {
126
+ "value": "This is the custom comment name on table."
127
+ }
128
+ }
129
+ ],
130
+ "fields": {
131
+ "dbo.users": [
132
+ {
133
+ "name": "user_id",
134
+ "type": {
135
+ "type_name": "int(10)",
136
+ "schemaName": null
137
+ },
138
+ "dbdefault": null,
139
+ "not_null": true,
140
+ "increment": true,
141
+ "note": {
142
+ "value": ""
143
+ }
144
+ },
145
+ {
146
+ "name": "username",
147
+ "type": {
148
+ "type_name": "varchar(50)",
149
+ "schemaName": null
150
+ },
151
+ "dbdefault": null,
152
+ "not_null": true,
153
+ "increment": false,
154
+ "note": {
155
+ "value": ""
156
+ }
157
+ },
158
+ {
159
+ "name": "email",
160
+ "type": {
161
+ "type_name": "varchar(100)",
162
+ "schemaName": null
163
+ },
164
+ "dbdefault": null,
165
+ "not_null": true,
166
+ "increment": false,
167
+ "note": {
168
+ "value": ""
169
+ }
170
+ },
171
+ {
172
+ "name": "password_hash",
173
+ "type": {
174
+ "type_name": "varchar(255)",
175
+ "schemaName": null
176
+ },
177
+ "dbdefault": null,
178
+ "not_null": true,
179
+ "increment": false,
180
+ "note": {
181
+ "value": ""
182
+ }
183
+ },
184
+ {
185
+ "name": "first_name",
186
+ "type": {
187
+ "type_name": "varchar(50)",
188
+ "schemaName": null
189
+ },
190
+ "dbdefault": null,
191
+ "not_null": false,
192
+ "increment": false,
193
+ "note": {
194
+ "value": ""
195
+ }
196
+ },
197
+ {
198
+ "name": "last_name",
199
+ "type": {
200
+ "type_name": "varchar(50)",
201
+ "schemaName": null
202
+ },
203
+ "dbdefault": null,
204
+ "not_null": false,
205
+ "increment": false,
206
+ "note": {
207
+ "value": ""
208
+ }
209
+ },
210
+ {
211
+ "name": "full_name",
212
+ "type": {
213
+ "type_name": "varchar(100)",
214
+ "schemaName": null
215
+ },
216
+ "dbdefault": null,
217
+ "not_null": false,
218
+ "increment": false,
219
+ "note": {
220
+ "value": ""
221
+ }
222
+ },
223
+ {
224
+ "name": "full_name_lower",
225
+ "type": {
226
+ "type_name": "varchar(100)",
227
+ "schemaName": null
228
+ },
229
+ "dbdefault": null,
230
+ "not_null": false,
231
+ "increment": false,
232
+ "note": {
233
+ "value": ""
234
+ }
235
+ },
236
+ {
237
+ "name": "date_of_birth",
238
+ "type": {
239
+ "type_name": "date",
240
+ "schemaName": null
241
+ },
242
+ "dbdefault": null,
243
+ "not_null": false,
244
+ "increment": false,
245
+ "note": {
246
+ "value": ""
247
+ }
248
+ },
249
+ {
250
+ "name": "created_at",
251
+ "type": {
252
+ "type_name": "datetime2",
253
+ "schemaName": null
254
+ },
255
+ "dbdefault": {
256
+ "type": "expression",
257
+ "value": "getdate()"
258
+ },
259
+ "not_null": false,
260
+ "increment": false,
261
+ "note": {
262
+ "value": ""
263
+ }
264
+ },
265
+ {
266
+ "name": "last_login",
267
+ "type": {
268
+ "type_name": "datetime2",
269
+ "schemaName": null
270
+ },
271
+ "dbdefault": null,
272
+ "not_null": false,
273
+ "increment": false,
274
+ "note": {
275
+ "value": ""
276
+ }
277
+ },
278
+ {
279
+ "name": "is_active",
280
+ "type": {
281
+ "type_name": "bit",
282
+ "schemaName": null
283
+ },
284
+ "dbdefault": {
285
+ "type": "number",
286
+ "value": "1"
287
+ },
288
+ "not_null": false,
289
+ "increment": false,
290
+ "note": {
291
+ "value": ""
292
+ }
293
+ }
294
+ ],
295
+ "dbo.products": [
296
+ {
297
+ "name": "product_id",
298
+ "type": {
299
+ "type_name": "int(10)",
300
+ "schemaName": null
301
+ },
302
+ "dbdefault": null,
303
+ "not_null": true,
304
+ "increment": true,
305
+ "note": {
306
+ "value": ""
307
+ }
308
+ },
309
+ {
310
+ "name": "name",
311
+ "type": {
312
+ "type_name": "varchar(100)",
313
+ "schemaName": null
314
+ },
315
+ "dbdefault": null,
316
+ "not_null": true,
317
+ "increment": false,
318
+ "note": {
319
+ "value": ""
320
+ }
321
+ },
322
+ {
323
+ "name": "description",
324
+ "type": {
325
+ "type_name": "text",
326
+ "schemaName": null
327
+ },
328
+ "dbdefault": null,
329
+ "not_null": false,
330
+ "increment": false,
331
+ "note": {
332
+ "value": ""
333
+ }
334
+ },
335
+ {
336
+ "name": "price",
337
+ "type": {
338
+ "type_name": "decimal(10,2)",
339
+ "schemaName": null
340
+ },
341
+ "dbdefault": null,
342
+ "not_null": true,
343
+ "increment": false,
344
+ "note": {
345
+ "value": ""
346
+ }
347
+ },
348
+ {
349
+ "name": "stock_quantity",
350
+ "type": {
351
+ "type_name": "int(10)",
352
+ "schemaName": null
353
+ },
354
+ "dbdefault": {
355
+ "type": "number",
356
+ "value": "0"
357
+ },
358
+ "not_null": true,
359
+ "increment": false,
360
+ "note": {
361
+ "value": ""
362
+ }
363
+ },
364
+ {
365
+ "name": "category",
366
+ "type": {
367
+ "type_name": "varchar(50)",
368
+ "schemaName": null
369
+ },
370
+ "dbdefault": null,
371
+ "not_null": false,
372
+ "increment": false,
373
+ "note": {
374
+ "value": ""
375
+ }
376
+ },
377
+ {
378
+ "name": "created_at",
379
+ "type": {
380
+ "type_name": "datetime2",
381
+ "schemaName": null
382
+ },
383
+ "dbdefault": {
384
+ "type": "expression",
385
+ "value": "getdate()"
386
+ },
387
+ "not_null": false,
388
+ "increment": false,
389
+ "note": {
390
+ "value": ""
391
+ }
392
+ },
393
+ {
394
+ "name": "updated_at",
395
+ "type": {
396
+ "type_name": "datetime2",
397
+ "schemaName": null
398
+ },
399
+ "dbdefault": {
400
+ "type": "expression",
401
+ "value": "getdate()"
402
+ },
403
+ "not_null": false,
404
+ "increment": false,
405
+ "note": {
406
+ "value": ""
407
+ }
408
+ },
409
+ {
410
+ "name": "is_available",
411
+ "type": {
412
+ "type_name": "bit",
413
+ "schemaName": null
414
+ },
415
+ "dbdefault": {
416
+ "type": "number",
417
+ "value": "1"
418
+ },
419
+ "not_null": false,
420
+ "increment": false,
421
+ "note": {
422
+ "value": ""
423
+ }
424
+ }
425
+ ],
426
+ "dbo.orders": [
427
+ {
428
+ "name": "order_id",
429
+ "type": {
430
+ "type_name": "int(10)",
431
+ "schemaName": null
432
+ },
433
+ "dbdefault": null,
434
+ "not_null": true,
435
+ "increment": true,
436
+ "note": {
437
+ "value": ""
438
+ }
439
+ },
440
+ {
441
+ "name": "user_id",
442
+ "type": {
443
+ "type_name": "int(10)",
444
+ "schemaName": null
445
+ },
446
+ "dbdefault": null,
447
+ "not_null": true,
448
+ "increment": false,
449
+ "note": {
450
+ "value": ""
451
+ }
452
+ },
453
+ {
454
+ "name": "order_date",
455
+ "type": {
456
+ "type_name": "datetime2",
457
+ "schemaName": null
458
+ },
459
+ "dbdefault": {
460
+ "type": "expression",
461
+ "value": "getdate()"
462
+ },
463
+ "not_null": false,
464
+ "increment": false,
465
+ "note": {
466
+ "value": ""
467
+ }
468
+ },
469
+ {
470
+ "name": "total_amount",
471
+ "type": {
472
+ "type_name": "decimal(12,2)",
473
+ "schemaName": null
474
+ },
475
+ "dbdefault": null,
476
+ "not_null": true,
477
+ "increment": false,
478
+ "note": {
479
+ "value": ""
480
+ }
481
+ },
482
+ {
483
+ "name": "status",
484
+ "type": {
485
+ "type_name": "varchar(20)",
486
+ "schemaName": null
487
+ },
488
+ "dbdefault": {
489
+ "type": "string",
490
+ "value": "pending"
491
+ },
492
+ "not_null": false,
493
+ "increment": false,
494
+ "note": {
495
+ "value": ""
496
+ }
497
+ },
498
+ {
499
+ "name": "shipping_address",
500
+ "type": {
501
+ "type_name": "text",
502
+ "schemaName": null
503
+ },
504
+ "dbdefault": null,
505
+ "not_null": true,
506
+ "increment": false,
507
+ "note": {
508
+ "value": ""
509
+ }
510
+ },
511
+ {
512
+ "name": "billing_address",
513
+ "type": {
514
+ "type_name": "text",
515
+ "schemaName": null
516
+ },
517
+ "dbdefault": null,
518
+ "not_null": true,
519
+ "increment": false,
520
+ "note": {
521
+ "value": ""
522
+ }
523
+ }
524
+ ],
525
+ "dbo.order_items": [
526
+ {
527
+ "name": "order_item_id",
528
+ "type": {
529
+ "type_name": "int(10)",
530
+ "schemaName": null
531
+ },
532
+ "dbdefault": null,
533
+ "not_null": true,
534
+ "increment": true,
535
+ "note": {
536
+ "value": ""
537
+ }
538
+ },
539
+ {
540
+ "name": "order_id",
541
+ "type": {
542
+ "type_name": "int(10)",
543
+ "schemaName": null
544
+ },
545
+ "dbdefault": null,
546
+ "not_null": true,
547
+ "increment": false,
548
+ "note": {
549
+ "value": ""
550
+ }
551
+ },
552
+ {
553
+ "name": "product_id",
554
+ "type": {
555
+ "type_name": "int(10)",
556
+ "schemaName": null
557
+ },
558
+ "dbdefault": null,
559
+ "not_null": true,
560
+ "increment": false,
561
+ "note": {
562
+ "value": ""
563
+ }
564
+ },
565
+ {
566
+ "name": "quantity",
567
+ "type": {
568
+ "type_name": "int(10)",
569
+ "schemaName": null
570
+ },
571
+ "dbdefault": null,
572
+ "not_null": true,
573
+ "increment": false,
574
+ "note": {
575
+ "value": ""
576
+ }
577
+ },
578
+ {
579
+ "name": "unit_price",
580
+ "type": {
581
+ "type_name": "decimal(10,2)",
582
+ "schemaName": null
583
+ },
584
+ "dbdefault": null,
585
+ "not_null": true,
586
+ "increment": false,
587
+ "note": {
588
+ "value": ""
589
+ }
590
+ }
591
+ ],
592
+ "dbo.StringTypes": [
593
+ {
594
+ "name": "Id",
595
+ "type": {
596
+ "type_name": "int(10)",
597
+ "schemaName": null
598
+ },
599
+ "dbdefault": null,
600
+ "not_null": true,
601
+ "increment": true,
602
+ "note": {
603
+ "value": ""
604
+ }
605
+ },
606
+ {
607
+ "name": "CharField",
608
+ "type": {
609
+ "type_name": "char(10)",
610
+ "schemaName": null
611
+ },
612
+ "dbdefault": {
613
+ "type": "string",
614
+ "value": "N/A"
615
+ },
616
+ "not_null": false,
617
+ "increment": false,
618
+ "note": {
619
+ "value": ""
620
+ }
621
+ },
622
+ {
623
+ "name": "VarcharField",
624
+ "type": {
625
+ "type_name": "varchar(50)",
626
+ "schemaName": null
627
+ },
628
+ "dbdefault": {
629
+ "type": "string",
630
+ "value": "{\"default_key\": \"default_value\"}"
631
+ },
632
+ "not_null": false,
633
+ "increment": false,
634
+ "note": {
635
+ "value": ""
636
+ }
637
+ },
638
+ {
639
+ "name": "VarcharMaxField",
640
+ "type": {
641
+ "type_name": "varchar(MAX)",
642
+ "schemaName": null
643
+ },
644
+ "dbdefault": {
645
+ "type": "string",
646
+ "value": "N/A"
647
+ },
648
+ "not_null": false,
649
+ "increment": false,
650
+ "note": {
651
+ "value": ""
652
+ }
653
+ },
654
+ {
655
+ "name": "TextField",
656
+ "type": {
657
+ "type_name": "text",
658
+ "schemaName": null
659
+ },
660
+ "dbdefault": {
661
+ "type": "string",
662
+ "value": "N/A"
663
+ },
664
+ "not_null": false,
665
+ "increment": false,
666
+ "note": {
667
+ "value": ""
668
+ }
669
+ },
670
+ {
671
+ "name": "NCharField",
672
+ "type": {
673
+ "type_name": "nchar(10)",
674
+ "schemaName": null
675
+ },
676
+ "dbdefault": {
677
+ "type": "expression",
678
+ "value": "N'N/A'"
679
+ },
680
+ "not_null": false,
681
+ "increment": false,
682
+ "note": {
683
+ "value": ""
684
+ }
685
+ },
686
+ {
687
+ "name": "NVarCharField",
688
+ "type": {
689
+ "type_name": "nvarchar(50)",
690
+ "schemaName": null
691
+ },
692
+ "dbdefault": {
693
+ "type": "expression",
694
+ "value": "N'N/A'"
695
+ },
696
+ "not_null": false,
697
+ "increment": false,
698
+ "note": {
699
+ "value": ""
700
+ }
701
+ },
702
+ {
703
+ "name": "NVarCharMaxField",
704
+ "type": {
705
+ "type_name": "nvarchar(MAX)",
706
+ "schemaName": null
707
+ },
708
+ "dbdefault": {
709
+ "type": "expression",
710
+ "value": "N'N/A'"
711
+ },
712
+ "not_null": false,
713
+ "increment": false,
714
+ "note": {
715
+ "value": ""
716
+ }
717
+ },
718
+ {
719
+ "name": "NTextField",
720
+ "type": {
721
+ "type_name": "ntext",
722
+ "schemaName": null
723
+ },
724
+ "dbdefault": {
725
+ "type": "expression",
726
+ "value": "N'N/A'"
727
+ },
728
+ "not_null": false,
729
+ "increment": false,
730
+ "note": {
731
+ "value": ""
732
+ }
733
+ }
734
+ ],
735
+ "dbo.NumberTypes": [
736
+ {
737
+ "name": "ID",
738
+ "type": {
739
+ "type_name": "int(10)",
740
+ "schemaName": null
741
+ },
742
+ "dbdefault": null,
743
+ "not_null": true,
744
+ "increment": true,
745
+ "note": {
746
+ "value": ""
747
+ }
748
+ },
749
+ {
750
+ "name": "TINYINTCol",
751
+ "type": {
752
+ "type_name": "tinyint(3)",
753
+ "schemaName": null
754
+ },
755
+ "dbdefault": {
756
+ "type": "number",
757
+ "value": "0"
758
+ },
759
+ "not_null": false,
760
+ "increment": false,
761
+ "note": {
762
+ "value": ""
763
+ }
764
+ },
765
+ {
766
+ "name": "SMALLINTCol",
767
+ "type": {
768
+ "type_name": "smallint(5)",
769
+ "schemaName": null
770
+ },
771
+ "dbdefault": {
772
+ "type": "number",
773
+ "value": "0"
774
+ },
775
+ "not_null": false,
776
+ "increment": false,
777
+ "note": {
778
+ "value": ""
779
+ }
780
+ },
781
+ {
782
+ "name": "INTCol",
783
+ "type": {
784
+ "type_name": "int(10)",
785
+ "schemaName": null
786
+ },
787
+ "dbdefault": {
788
+ "type": "number",
789
+ "value": "0"
790
+ },
791
+ "not_null": false,
792
+ "increment": false,
793
+ "note": {
794
+ "value": ""
795
+ }
796
+ },
797
+ {
798
+ "name": "BIGINTCol",
799
+ "type": {
800
+ "type_name": "bigint(19)",
801
+ "schemaName": null
802
+ },
803
+ "dbdefault": {
804
+ "type": "number",
805
+ "value": "0"
806
+ },
807
+ "not_null": false,
808
+ "increment": false,
809
+ "note": {
810
+ "value": ""
811
+ }
812
+ },
813
+ {
814
+ "name": "DECIMALCol",
815
+ "type": {
816
+ "type_name": "decimal(10,2)",
817
+ "schemaName": null
818
+ },
819
+ "dbdefault": {
820
+ "type": "number",
821
+ "value": "0.00"
822
+ },
823
+ "not_null": false,
824
+ "increment": false,
825
+ "note": {
826
+ "value": ""
827
+ }
828
+ },
829
+ {
830
+ "name": "NUMERICCol",
831
+ "type": {
832
+ "type_name": "numeric(10,2)",
833
+ "schemaName": null
834
+ },
835
+ "dbdefault": {
836
+ "type": "number",
837
+ "value": "0.00"
838
+ },
839
+ "not_null": false,
840
+ "increment": false,
841
+ "note": {
842
+ "value": ""
843
+ }
844
+ },
845
+ {
846
+ "name": "FLOATCol",
847
+ "type": {
848
+ "type_name": "float(53)",
849
+ "schemaName": null
850
+ },
851
+ "dbdefault": {
852
+ "type": "number",
853
+ "value": "0.0"
854
+ },
855
+ "not_null": false,
856
+ "increment": false,
857
+ "note": {
858
+ "value": ""
859
+ }
860
+ },
861
+ {
862
+ "name": "REALCol",
863
+ "type": {
864
+ "type_name": "real(24)",
865
+ "schemaName": null
866
+ },
867
+ "dbdefault": {
868
+ "type": "number",
869
+ "value": "0.0"
870
+ },
871
+ "not_null": false,
872
+ "increment": false,
873
+ "note": {
874
+ "value": ""
875
+ }
876
+ },
877
+ {
878
+ "name": "BITCol",
879
+ "type": {
880
+ "type_name": "bit",
881
+ "schemaName": null
882
+ },
883
+ "dbdefault": {
884
+ "type": "number",
885
+ "value": "0"
886
+ },
887
+ "not_null": false,
888
+ "increment": false,
889
+ "note": {
890
+ "value": ""
891
+ }
892
+ }
893
+ ],
894
+ "dbo.NumberTypesNoDefault": [
895
+ {
896
+ "name": "ID",
897
+ "type": {
898
+ "type_name": "int(10)",
899
+ "schemaName": null
900
+ },
901
+ "dbdefault": null,
902
+ "not_null": true,
903
+ "increment": true,
904
+ "note": {
905
+ "value": ""
906
+ }
907
+ },
908
+ {
909
+ "name": "TINYINTCol",
910
+ "type": {
911
+ "type_name": "tinyint(3)",
912
+ "schemaName": null
913
+ },
914
+ "dbdefault": null,
915
+ "not_null": false,
916
+ "increment": false,
917
+ "note": {
918
+ "value": ""
919
+ }
920
+ },
921
+ {
922
+ "name": "SMALLINTCol",
923
+ "type": {
924
+ "type_name": "smallint(5)",
925
+ "schemaName": null
926
+ },
927
+ "dbdefault": null,
928
+ "not_null": false,
929
+ "increment": false,
930
+ "note": {
931
+ "value": ""
932
+ }
933
+ },
934
+ {
935
+ "name": "INTCol",
936
+ "type": {
937
+ "type_name": "int(10)",
938
+ "schemaName": null
939
+ },
940
+ "dbdefault": null,
941
+ "not_null": false,
942
+ "increment": false,
943
+ "note": {
944
+ "value": ""
945
+ }
946
+ },
947
+ {
948
+ "name": "BIGINTCol",
949
+ "type": {
950
+ "type_name": "bigint(19)",
951
+ "schemaName": null
952
+ },
953
+ "dbdefault": null,
954
+ "not_null": false,
955
+ "increment": false,
956
+ "note": {
957
+ "value": ""
958
+ }
959
+ },
960
+ {
961
+ "name": "DECIMALCol",
962
+ "type": {
963
+ "type_name": "decimal(10,2)",
964
+ "schemaName": null
965
+ },
966
+ "dbdefault": null,
967
+ "not_null": false,
968
+ "increment": false,
969
+ "note": {
970
+ "value": ""
971
+ }
972
+ },
973
+ {
974
+ "name": "NUMERICCol",
975
+ "type": {
976
+ "type_name": "numeric(10,2)",
977
+ "schemaName": null
978
+ },
979
+ "dbdefault": null,
980
+ "not_null": false,
981
+ "increment": false,
982
+ "note": {
983
+ "value": ""
984
+ }
985
+ },
986
+ {
987
+ "name": "FLOATCol",
988
+ "type": {
989
+ "type_name": "float(53)",
990
+ "schemaName": null
991
+ },
992
+ "dbdefault": null,
993
+ "not_null": false,
994
+ "increment": false,
995
+ "note": {
996
+ "value": ""
997
+ }
998
+ },
999
+ {
1000
+ "name": "REALCol",
1001
+ "type": {
1002
+ "type_name": "real(24)",
1003
+ "schemaName": null
1004
+ },
1005
+ "dbdefault": null,
1006
+ "not_null": false,
1007
+ "increment": false,
1008
+ "note": {
1009
+ "value": ""
1010
+ }
1011
+ },
1012
+ {
1013
+ "name": "BITCol",
1014
+ "type": {
1015
+ "type_name": "bit",
1016
+ "schemaName": null
1017
+ },
1018
+ "dbdefault": null,
1019
+ "not_null": false,
1020
+ "increment": false,
1021
+ "note": {
1022
+ "value": ""
1023
+ }
1024
+ }
1025
+ ],
1026
+ "dbo.DatetimeTypes": [
1027
+ {
1028
+ "name": "ID",
1029
+ "type": {
1030
+ "type_name": "int(10)",
1031
+ "schemaName": null
1032
+ },
1033
+ "dbdefault": null,
1034
+ "not_null": true,
1035
+ "increment": true,
1036
+ "note": {
1037
+ "value": ""
1038
+ }
1039
+ },
1040
+ {
1041
+ "name": "DATECol",
1042
+ "type": {
1043
+ "type_name": "date",
1044
+ "schemaName": null
1045
+ },
1046
+ "dbdefault": {
1047
+ "type": "expression",
1048
+ "value": "getdate()"
1049
+ },
1050
+ "not_null": false,
1051
+ "increment": false,
1052
+ "note": {
1053
+ "value": ""
1054
+ }
1055
+ },
1056
+ {
1057
+ "name": "TIMECol",
1058
+ "type": {
1059
+ "type_name": "time",
1060
+ "schemaName": null
1061
+ },
1062
+ "dbdefault": {
1063
+ "type": "expression",
1064
+ "value": "CONVERT([time],getdate())"
1065
+ },
1066
+ "not_null": false,
1067
+ "increment": false,
1068
+ "note": {
1069
+ "value": ""
1070
+ }
1071
+ },
1072
+ {
1073
+ "name": "DATETIMECol",
1074
+ "type": {
1075
+ "type_name": "datetime",
1076
+ "schemaName": null
1077
+ },
1078
+ "dbdefault": {
1079
+ "type": "expression",
1080
+ "value": "getdate()"
1081
+ },
1082
+ "not_null": false,
1083
+ "increment": false,
1084
+ "note": {
1085
+ "value": ""
1086
+ }
1087
+ },
1088
+ {
1089
+ "name": "DATETIME2Col",
1090
+ "type": {
1091
+ "type_name": "datetime2",
1092
+ "schemaName": null
1093
+ },
1094
+ "dbdefault": {
1095
+ "type": "expression",
1096
+ "value": "sysdatetime()"
1097
+ },
1098
+ "not_null": false,
1099
+ "increment": false,
1100
+ "note": {
1101
+ "value": ""
1102
+ }
1103
+ },
1104
+ {
1105
+ "name": "SMALLDATETIMECol",
1106
+ "type": {
1107
+ "type_name": "smalldatetime",
1108
+ "schemaName": null
1109
+ },
1110
+ "dbdefault": {
1111
+ "type": "expression",
1112
+ "value": "getdate()"
1113
+ },
1114
+ "not_null": false,
1115
+ "increment": false,
1116
+ "note": {
1117
+ "value": ""
1118
+ }
1119
+ },
1120
+ {
1121
+ "name": "ROWVERSIONCol",
1122
+ "type": {
1123
+ "type_name": "timestamp",
1124
+ "schemaName": null
1125
+ },
1126
+ "dbdefault": null,
1127
+ "not_null": true,
1128
+ "increment": false,
1129
+ "note": {
1130
+ "value": ""
1131
+ }
1132
+ },
1133
+ {
1134
+ "name": "DATETIMEOFFSETCol",
1135
+ "type": {
1136
+ "type_name": "datetimeoffset",
1137
+ "schemaName": null
1138
+ },
1139
+ "dbdefault": {
1140
+ "type": "expression",
1141
+ "value": "sysdatetimeoffset()"
1142
+ },
1143
+ "not_null": false,
1144
+ "increment": false,
1145
+ "note": {
1146
+ "value": ""
1147
+ }
1148
+ }
1149
+ ],
1150
+ "dbo.ObjectTypes": [
1151
+ {
1152
+ "name": "Id",
1153
+ "type": {
1154
+ "type_name": "int(10)",
1155
+ "schemaName": null
1156
+ },
1157
+ "dbdefault": null,
1158
+ "not_null": true,
1159
+ "increment": true,
1160
+ "note": {
1161
+ "value": ""
1162
+ }
1163
+ },
1164
+ {
1165
+ "name": "XmlField",
1166
+ "type": {
1167
+ "type_name": "xml",
1168
+ "schemaName": null
1169
+ },
1170
+ "dbdefault": {
1171
+ "type": "string",
1172
+ "value": "<Books>\n <Book>\n <Title>The Great Gatsby</Title>\n <Author>F. Scott Fitzgerald</Author>\n <Year>1925</Year>\n <Price>10.99</Price>\n <Publisher>Scribner</Publisher>\n <Location>New York</Location>\n <Genre>Fiction</Genre>\n <Subgenre>Classic</Subgenre>\n </Book>\n <Book>\n <Title>1984</Title>\n <Author>George Orwell</Author>\n <Year>1949</Year>\n <Price>8.99</Price>\n <Publisher>Secker & Warburg</Publisher>\n <Location>London</Location>\n <Genre>Dystopian</Genre>\n <Subgenre>Political Fiction</Subgenre>\n </Book>\n </Books>"
1173
+ },
1174
+ "not_null": false,
1175
+ "increment": false,
1176
+ "note": {
1177
+ "value": ""
1178
+ }
1179
+ },
1180
+ {
1181
+ "name": "JsonField",
1182
+ "type": {
1183
+ "type_name": "nvarchar(MAX)",
1184
+ "schemaName": null
1185
+ },
1186
+ "dbdefault": {
1187
+ "type": "expression",
1188
+ "value": "N'{\"defaultKey\": \"defaultValue\", \"status\": \"active\", \"count\": 0}'"
1189
+ },
1190
+ "not_null": false,
1191
+ "increment": false,
1192
+ "note": {
1193
+ "value": ""
1194
+ }
1195
+ },
1196
+ {
1197
+ "name": "BinaryField",
1198
+ "type": {
1199
+ "type_name": "binary(50)",
1200
+ "schemaName": null
1201
+ },
1202
+ "dbdefault": {
1203
+ "type": "expression",
1204
+ "value": "0x00"
1205
+ },
1206
+ "not_null": false,
1207
+ "increment": false,
1208
+ "note": {
1209
+ "value": ""
1210
+ }
1211
+ },
1212
+ {
1213
+ "name": "VarBinaryField",
1214
+ "type": {
1215
+ "type_name": "varbinary(50)",
1216
+ "schemaName": null
1217
+ },
1218
+ "dbdefault": {
1219
+ "type": "expression",
1220
+ "value": "0x00"
1221
+ },
1222
+ "not_null": false,
1223
+ "increment": false,
1224
+ "note": {
1225
+ "value": ""
1226
+ }
1227
+ },
1228
+ {
1229
+ "name": "VarBinaryMaxField",
1230
+ "type": {
1231
+ "type_name": "varbinary(MAX)",
1232
+ "schemaName": null
1233
+ },
1234
+ "dbdefault": {
1235
+ "type": "expression",
1236
+ "value": "0x00"
1237
+ },
1238
+ "not_null": false,
1239
+ "increment": false,
1240
+ "note": {
1241
+ "value": ""
1242
+ }
1243
+ },
1244
+ {
1245
+ "name": "ImageField",
1246
+ "type": {
1247
+ "type_name": "image",
1248
+ "schemaName": null
1249
+ },
1250
+ "dbdefault": {
1251
+ "type": "expression",
1252
+ "value": "0x00"
1253
+ },
1254
+ "not_null": false,
1255
+ "increment": false,
1256
+ "note": {
1257
+ "value": ""
1258
+ }
1259
+ }
1260
+ ],
1261
+ "dbo.gender_reference": [
1262
+ {
1263
+ "name": "value",
1264
+ "type": {
1265
+ "type_name": "nvarchar(10)",
1266
+ "schemaName": null
1267
+ },
1268
+ "dbdefault": null,
1269
+ "not_null": true,
1270
+ "increment": false,
1271
+ "note": {
1272
+ "value": ""
1273
+ }
1274
+ }
1275
+ ],
1276
+ "dbo.user_define_data_types": [
1277
+ {
1278
+ "name": "id",
1279
+ "type": {
1280
+ "type_name": "int(10)",
1281
+ "schemaName": null
1282
+ },
1283
+ "dbdefault": null,
1284
+ "not_null": true,
1285
+ "increment": true,
1286
+ "note": {
1287
+ "value": ""
1288
+ }
1289
+ },
1290
+ {
1291
+ "name": "name",
1292
+ "type": {
1293
+ "type_name": "nvarchar(50)",
1294
+ "schemaName": null
1295
+ },
1296
+ "dbdefault": null,
1297
+ "not_null": false,
1298
+ "increment": false,
1299
+ "note": {
1300
+ "value": ""
1301
+ }
1302
+ },
1303
+ {
1304
+ "name": "gender",
1305
+ "type": {
1306
+ "type_name": "nvarchar(10)",
1307
+ "schemaName": null
1308
+ },
1309
+ "dbdefault": null,
1310
+ "not_null": false,
1311
+ "increment": false,
1312
+ "note": {
1313
+ "value": ""
1314
+ }
1315
+ },
1316
+ {
1317
+ "name": "age_start",
1318
+ "type": {
1319
+ "type_name": "int(10)",
1320
+ "schemaName": null
1321
+ },
1322
+ "dbdefault": null,
1323
+ "not_null": false,
1324
+ "increment": false,
1325
+ "note": {
1326
+ "value": ""
1327
+ }
1328
+ },
1329
+ {
1330
+ "name": "age_end",
1331
+ "type": {
1332
+ "type_name": "int(10)",
1333
+ "schemaName": null
1334
+ },
1335
+ "dbdefault": null,
1336
+ "not_null": false,
1337
+ "increment": false,
1338
+ "note": {
1339
+ "value": ""
1340
+ }
1341
+ },
1342
+ {
1343
+ "name": "height",
1344
+ "type": {
1345
+ "type_name": "float(53)",
1346
+ "schemaName": null
1347
+ },
1348
+ "dbdefault": null,
1349
+ "not_null": false,
1350
+ "increment": false,
1351
+ "note": {
1352
+ "value": ""
1353
+ }
1354
+ },
1355
+ {
1356
+ "name": "weight",
1357
+ "type": {
1358
+ "type_name": "float(53)",
1359
+ "schemaName": null
1360
+ },
1361
+ "dbdefault": null,
1362
+ "not_null": false,
1363
+ "increment": false,
1364
+ "note": {
1365
+ "value": ""
1366
+ }
1367
+ }
1368
+ ],
1369
+ "dbo.table_with_comments": [
1370
+ {
1371
+ "name": "id",
1372
+ "type": {
1373
+ "type_name": "int(10)",
1374
+ "schemaName": null
1375
+ },
1376
+ "dbdefault": null,
1377
+ "not_null": true,
1378
+ "increment": true,
1379
+ "note": {
1380
+ "value": "Unique identifier for each item."
1381
+ }
1382
+ },
1383
+ {
1384
+ "name": "name",
1385
+ "type": {
1386
+ "type_name": "varchar(100)",
1387
+ "schemaName": null
1388
+ },
1389
+ "dbdefault": null,
1390
+ "not_null": false,
1391
+ "increment": false,
1392
+ "note": {
1393
+ "value": "Name of the item."
1394
+ }
1395
+ },
1396
+ {
1397
+ "name": "description",
1398
+ "type": {
1399
+ "type_name": "text",
1400
+ "schemaName": null
1401
+ },
1402
+ "dbdefault": null,
1403
+ "not_null": false,
1404
+ "increment": false,
1405
+ "note": {
1406
+ "value": "Item's description"
1407
+ }
1408
+ },
1409
+ {
1410
+ "name": "created_at",
1411
+ "type": {
1412
+ "type_name": "datetime2",
1413
+ "schemaName": null
1414
+ },
1415
+ "dbdefault": {
1416
+ "type": "expression",
1417
+ "value": "getdate()"
1418
+ },
1419
+ "not_null": false,
1420
+ "increment": false,
1421
+ "note": {
1422
+ "value": "Timestamp when the item was created."
1423
+ }
1424
+ }
1425
+ ],
1426
+ "dbo.table_with_composite_primary_and_unique_indexes": [
1427
+ {
1428
+ "name": "col1",
1429
+ "type": {
1430
+ "type_name": "int(10)",
1431
+ "schemaName": null
1432
+ },
1433
+ "dbdefault": null,
1434
+ "not_null": true,
1435
+ "increment": false,
1436
+ "note": {
1437
+ "value": ""
1438
+ }
1439
+ },
1440
+ {
1441
+ "name": "col2",
1442
+ "type": {
1443
+ "type_name": "int(10)",
1444
+ "schemaName": null
1445
+ },
1446
+ "dbdefault": null,
1447
+ "not_null": true,
1448
+ "increment": false,
1449
+ "note": {
1450
+ "value": ""
1451
+ }
1452
+ },
1453
+ {
1454
+ "name": "col3",
1455
+ "type": {
1456
+ "type_name": "int(10)",
1457
+ "schemaName": null
1458
+ },
1459
+ "dbdefault": null,
1460
+ "not_null": false,
1461
+ "increment": false,
1462
+ "note": {
1463
+ "value": ""
1464
+ }
1465
+ },
1466
+ {
1467
+ "name": "col4",
1468
+ "type": {
1469
+ "type_name": "int(10)",
1470
+ "schemaName": null
1471
+ },
1472
+ "dbdefault": null,
1473
+ "not_null": false,
1474
+ "increment": false,
1475
+ "note": {
1476
+ "value": ""
1477
+ }
1478
+ }
1479
+ ],
1480
+ "dbo.Authors": [
1481
+ {
1482
+ "name": "AuthorID",
1483
+ "type": {
1484
+ "type_name": "int(10)",
1485
+ "schemaName": null
1486
+ },
1487
+ "dbdefault": null,
1488
+ "not_null": true,
1489
+ "increment": false,
1490
+ "note": {
1491
+ "value": ""
1492
+ }
1493
+ },
1494
+ {
1495
+ "name": "NationalityID",
1496
+ "type": {
1497
+ "type_name": "int(10)",
1498
+ "schemaName": null
1499
+ },
1500
+ "dbdefault": null,
1501
+ "not_null": true,
1502
+ "increment": false,
1503
+ "note": {
1504
+ "value": ""
1505
+ }
1506
+ },
1507
+ {
1508
+ "name": "AuthorName",
1509
+ "type": {
1510
+ "type_name": "nvarchar(100)",
1511
+ "schemaName": null
1512
+ },
1513
+ "dbdefault": null,
1514
+ "not_null": false,
1515
+ "increment": false,
1516
+ "note": {
1517
+ "value": ""
1518
+ }
1519
+ },
1520
+ {
1521
+ "name": "BirthYear",
1522
+ "type": {
1523
+ "type_name": "int(10)",
1524
+ "schemaName": null
1525
+ },
1526
+ "dbdefault": null,
1527
+ "not_null": false,
1528
+ "increment": false,
1529
+ "note": {
1530
+ "value": ""
1531
+ }
1532
+ }
1533
+ ],
1534
+ "dbo.Books": [
1535
+ {
1536
+ "name": "BookID",
1537
+ "type": {
1538
+ "type_name": "int(10)",
1539
+ "schemaName": null
1540
+ },
1541
+ "dbdefault": null,
1542
+ "not_null": true,
1543
+ "increment": false,
1544
+ "note": {
1545
+ "value": ""
1546
+ }
1547
+ },
1548
+ {
1549
+ "name": "AuthorID",
1550
+ "type": {
1551
+ "type_name": "int(10)",
1552
+ "schemaName": null
1553
+ },
1554
+ "dbdefault": null,
1555
+ "not_null": true,
1556
+ "increment": false,
1557
+ "note": {
1558
+ "value": ""
1559
+ }
1560
+ },
1561
+ {
1562
+ "name": "NationalityID",
1563
+ "type": {
1564
+ "type_name": "int(10)",
1565
+ "schemaName": null
1566
+ },
1567
+ "dbdefault": null,
1568
+ "not_null": false,
1569
+ "increment": false,
1570
+ "note": {
1571
+ "value": ""
1572
+ }
1573
+ },
1574
+ {
1575
+ "name": "ISBN",
1576
+ "type": {
1577
+ "type_name": "nvarchar(20)",
1578
+ "schemaName": null
1579
+ },
1580
+ "dbdefault": null,
1581
+ "not_null": false,
1582
+ "increment": false,
1583
+ "note": {
1584
+ "value": ""
1585
+ }
1586
+ },
1587
+ {
1588
+ "name": "Title",
1589
+ "type": {
1590
+ "type_name": "nvarchar(200)",
1591
+ "schemaName": null
1592
+ },
1593
+ "dbdefault": null,
1594
+ "not_null": false,
1595
+ "increment": false,
1596
+ "note": {
1597
+ "value": ""
1598
+ }
1599
+ }
1600
+ ],
1601
+ "dbo.AddressInfo": [
1602
+ {
1603
+ "name": "AddressID",
1604
+ "type": {
1605
+ "type_name": "uniqueidentifier(16)",
1606
+ "schemaName": null
1607
+ },
1608
+ "dbdefault": null,
1609
+ "not_null": true,
1610
+ "increment": false,
1611
+ "note": {
1612
+ "value": ""
1613
+ }
1614
+ },
1615
+ {
1616
+ "name": "AddressFormatID",
1617
+ "type": {
1618
+ "type_name": "uniqueidentifier(16)",
1619
+ "schemaName": null
1620
+ },
1621
+ "dbdefault": null,
1622
+ "not_null": true,
1623
+ "increment": false,
1624
+ "note": {
1625
+ "value": ""
1626
+ }
1627
+ }
1628
+ ],
1629
+ "dbo.AddressInfo2": [
1630
+ {
1631
+ "name": "A1",
1632
+ "type": {
1633
+ "type_name": "uniqueidentifier(16)",
1634
+ "schemaName": null
1635
+ },
1636
+ "dbdefault": null,
1637
+ "not_null": true,
1638
+ "increment": false,
1639
+ "note": {
1640
+ "value": ""
1641
+ }
1642
+ },
1643
+ {
1644
+ "name": "A2",
1645
+ "type": {
1646
+ "type_name": "uniqueidentifier(16)",
1647
+ "schemaName": null
1648
+ },
1649
+ "dbdefault": null,
1650
+ "not_null": true,
1651
+ "increment": false,
1652
+ "note": {
1653
+ "value": ""
1654
+ }
1655
+ },
1656
+ {
1657
+ "name": "A3",
1658
+ "type": {
1659
+ "type_name": "uniqueidentifier(16)",
1660
+ "schemaName": null
1661
+ },
1662
+ "dbdefault": null,
1663
+ "not_null": true,
1664
+ "increment": false,
1665
+ "note": {
1666
+ "value": ""
1667
+ }
1668
+ },
1669
+ {
1670
+ "name": "A4",
1671
+ "type": {
1672
+ "type_name": "uniqueidentifier(16)",
1673
+ "schemaName": null
1674
+ },
1675
+ "dbdefault": null,
1676
+ "not_null": true,
1677
+ "increment": false,
1678
+ "note": {
1679
+ "value": ""
1680
+ }
1681
+ }
1682
+ ],
1683
+ "dbo.TestDescriptionTable": [
1684
+ {
1685
+ "name": "Id",
1686
+ "type": {
1687
+ "type_name": "int(10)",
1688
+ "schemaName": null
1689
+ },
1690
+ "dbdefault": null,
1691
+ "not_null": false,
1692
+ "increment": false,
1693
+ "note": {
1694
+ "value": "Primary key identifier."
1695
+ }
1696
+ },
1697
+ {
1698
+ "name": "Name",
1699
+ "type": {
1700
+ "type_name": "nvarchar(100)",
1701
+ "schemaName": null
1702
+ },
1703
+ "dbdefault": null,
1704
+ "not_null": false,
1705
+ "increment": false,
1706
+ "note": {
1707
+ "value": "Name of the entity."
1708
+ }
1709
+ }
1710
+ ]
1711
+ },
1712
+ "enums": [],
1713
+ "refs": [
1714
+ {
1715
+ "name": "FK_AuthorNationality",
1716
+ "endpoints": [
1717
+ {
1718
+ "tableName": "Books",
1719
+ "schemaName": "dbo",
1720
+ "fieldNames": [
1721
+ "AuthorID",
1722
+ "NationalityID"
1723
+ ],
1724
+ "relation": "*"
1725
+ },
1726
+ {
1727
+ "tableName": "Authors",
1728
+ "schemaName": "dbo",
1729
+ "fieldNames": [
1730
+ "AuthorID",
1731
+ "NationalityID"
1732
+ ],
1733
+ "relation": "1"
1734
+ }
1735
+ ],
1736
+ "onDelete": null,
1737
+ "onUpdate": null
1738
+ },
1739
+ {
1740
+ "name": "fk_product",
1741
+ "endpoints": [
1742
+ {
1743
+ "tableName": "order_items",
1744
+ "schemaName": "dbo",
1745
+ "fieldNames": [
1746
+ "product_id"
1747
+ ],
1748
+ "relation": "*"
1749
+ },
1750
+ {
1751
+ "tableName": "products",
1752
+ "schemaName": "dbo",
1753
+ "fieldNames": [
1754
+ "product_id"
1755
+ ],
1756
+ "relation": "1"
1757
+ }
1758
+ ],
1759
+ "onDelete": null,
1760
+ "onUpdate": "CASCADE"
1761
+ },
1762
+ {
1763
+ "name": "fk_order",
1764
+ "endpoints": [
1765
+ {
1766
+ "tableName": "order_items",
1767
+ "schemaName": "dbo",
1768
+ "fieldNames": [
1769
+ "order_id"
1770
+ ],
1771
+ "relation": "*"
1772
+ },
1773
+ {
1774
+ "tableName": "orders",
1775
+ "schemaName": "dbo",
1776
+ "fieldNames": [
1777
+ "order_id"
1778
+ ],
1779
+ "relation": "1"
1780
+ }
1781
+ ],
1782
+ "onDelete": "CASCADE",
1783
+ "onUpdate": "CASCADE"
1784
+ },
1785
+ {
1786
+ "name": "fk_user",
1787
+ "endpoints": [
1788
+ {
1789
+ "tableName": "orders",
1790
+ "schemaName": "dbo",
1791
+ "fieldNames": [
1792
+ "user_id"
1793
+ ],
1794
+ "relation": "*"
1795
+ },
1796
+ {
1797
+ "tableName": "users",
1798
+ "schemaName": "dbo",
1799
+ "fieldNames": [
1800
+ "user_id"
1801
+ ],
1802
+ "relation": "1"
1803
+ }
1804
+ ],
1805
+ "onDelete": "CASCADE",
1806
+ "onUpdate": "CASCADE"
1807
+ },
1808
+ {
1809
+ "name": "fk_gender",
1810
+ "endpoints": [
1811
+ {
1812
+ "tableName": "user_define_data_types",
1813
+ "schemaName": "dbo",
1814
+ "fieldNames": [
1815
+ "gender"
1816
+ ],
1817
+ "relation": "*"
1818
+ },
1819
+ {
1820
+ "tableName": "gender_reference",
1821
+ "schemaName": "dbo",
1822
+ "fieldNames": [
1823
+ "value"
1824
+ ],
1825
+ "relation": "1"
1826
+ }
1827
+ ],
1828
+ "onDelete": null,
1829
+ "onUpdate": null
1830
+ }
1831
+ ],
1832
+ "indexes": {
1833
+ "dbo.order_items": [
1834
+ {
1835
+ "name": "idx_order_items_order_product",
1836
+ "type": "NONCLUSTERED",
1837
+ "columns": [
1838
+ {
1839
+ "type": "column",
1840
+ "value": "order_id"
1841
+ },
1842
+ {
1843
+ "type": "column",
1844
+ "value": "product_id"
1845
+ }
1846
+ ],
1847
+ "pk": false,
1848
+ "unique": false
1849
+ }
1850
+ ],
1851
+ "dbo.orders": [
1852
+ {
1853
+ "name": "idx_orders_user_date",
1854
+ "type": "NONCLUSTERED",
1855
+ "columns": [
1856
+ {
1857
+ "type": "column",
1858
+ "value": "user_id"
1859
+ },
1860
+ {
1861
+ "type": "column",
1862
+ "value": "order_date"
1863
+ }
1864
+ ],
1865
+ "pk": false,
1866
+ "unique": false
1867
+ }
1868
+ ],
1869
+ "dbo.products": [
1870
+ {
1871
+ "name": "idx_products_category",
1872
+ "type": "NONCLUSTERED",
1873
+ "columns": [
1874
+ {
1875
+ "type": "column",
1876
+ "value": "category"
1877
+ }
1878
+ ],
1879
+ "pk": false,
1880
+ "unique": false
1881
+ }
1882
+ ],
1883
+ "dbo.users": [
1884
+ {
1885
+ "name": "idx_users_email",
1886
+ "type": "NONCLUSTERED",
1887
+ "columns": [
1888
+ {
1889
+ "type": "column",
1890
+ "value": "email"
1891
+ }
1892
+ ],
1893
+ "pk": false,
1894
+ "unique": false
1895
+ },
1896
+ {
1897
+ "name": "idx_users_full_name",
1898
+ "type": "NONCLUSTERED",
1899
+ "columns": [
1900
+ {
1901
+ "type": "column",
1902
+ "value": "full_name"
1903
+ }
1904
+ ],
1905
+ "pk": false,
1906
+ "unique": false
1907
+ },
1908
+ {
1909
+ "name": "idx_users_is_active_full_name",
1910
+ "type": "NONCLUSTERED",
1911
+ "columns": [
1912
+ {
1913
+ "type": "column",
1914
+ "value": "is_active"
1915
+ },
1916
+ {
1917
+ "type": "column",
1918
+ "value": "full_name_lower"
1919
+ }
1920
+ ],
1921
+ "pk": false,
1922
+ "unique": false
1923
+ }
1924
+ ]
1925
+ },
1926
+ "tableConstraints": {
1927
+ "dbo.Authors": {
1928
+ "AuthorID": {
1929
+ "checks": [],
1930
+ "pk": true
1931
+ },
1932
+ "NationalityID": {
1933
+ "checks": [],
1934
+ "pk": true
1935
+ },
1936
+ "AuthorName": {
1937
+ "checks": [],
1938
+ "unique": true
1939
+ },
1940
+ "BirthYear": {
1941
+ "checks": [],
1942
+ "unique": true
1943
+ }
1944
+ },
1945
+ "dbo.Books": {
1946
+ "BookID": {
1947
+ "checks": [],
1948
+ "pk": true
1949
+ },
1950
+ "AuthorID": {
1951
+ "checks": [],
1952
+ "pk": true
1953
+ },
1954
+ "ISBN": {
1955
+ "checks": [],
1956
+ "unique": true
1957
+ }
1958
+ },
1959
+ "dbo.DatetimeTypes": {
1960
+ "ID": {
1961
+ "checks": [],
1962
+ "pk": true
1963
+ }
1964
+ },
1965
+ "dbo.gender_reference": {
1966
+ "value": {
1967
+ "checks": [],
1968
+ "pk": true
1969
+ }
1970
+ },
1971
+ "dbo.NumberTypes": {
1972
+ "ID": {
1973
+ "checks": [],
1974
+ "pk": true
1975
+ }
1976
+ },
1977
+ "dbo.NumberTypesNoDefault": {
1978
+ "ID": {
1979
+ "checks": [],
1980
+ "pk": true
1981
+ }
1982
+ },
1983
+ "dbo.ObjectTypes": {
1984
+ "Id": {
1985
+ "checks": [],
1986
+ "pk": true
1987
+ }
1988
+ },
1989
+ "dbo.order_items": {
1990
+ "order_item_id": {
1991
+ "checks": [],
1992
+ "pk": true
1993
+ },
1994
+ "order_id": {
1995
+ "checks": [],
1996
+ "unique": true
1997
+ },
1998
+ "product_id": {
1999
+ "checks": [],
2000
+ "unique": true
2001
+ },
2002
+ "quantity": {
2003
+ "checks": [
2004
+ {
2005
+ "name": "chk_quantity_positive",
2006
+ "expression": "[quantity]>(0)"
2007
+ }
2008
+ ]
2009
+ },
2010
+ "unit_price": {
2011
+ "checks": [
2012
+ {
2013
+ "name": "chk_unit_price_positive",
2014
+ "expression": "[unit_price]>(0)"
2015
+ }
2016
+ ]
2017
+ }
2018
+ },
2019
+ "dbo.orders": {
2020
+ "order_id": {
2021
+ "checks": [],
2022
+ "pk": true
2023
+ },
2024
+ "total_amount": {
2025
+ "checks": [
2026
+ {
2027
+ "name": "chk_total_amount_positive",
2028
+ "expression": "[total_amount]>(0)"
2029
+ }
2030
+ ]
2031
+ },
2032
+ "status": {
2033
+ "checks": [
2034
+ {
2035
+ "name": "chk_status",
2036
+ "expression": "[status]='cancelled' OR [status]='delivered' OR [status]='shipped' OR [status]='processing' OR [status]='pending'"
2037
+ }
2038
+ ]
2039
+ }
2040
+ },
2041
+ "dbo.products": {
2042
+ "product_id": {
2043
+ "checks": [],
2044
+ "pk": true
2045
+ },
2046
+ "price": {
2047
+ "checks": [
2048
+ {
2049
+ "name": "chk_price_positive",
2050
+ "expression": "[price]>(0)"
2051
+ }
2052
+ ]
2053
+ },
2054
+ "stock_quantity": {
2055
+ "checks": [
2056
+ {
2057
+ "name": "chk_stock_non_negative",
2058
+ "expression": "[stock_quantity]>=(0)"
2059
+ }
2060
+ ]
2061
+ }
2062
+ },
2063
+ "dbo.StringTypes": {
2064
+ "Id": {
2065
+ "checks": [],
2066
+ "pk": true
2067
+ }
2068
+ },
2069
+ "dbo.table_with_comments": {
2070
+ "id": {
2071
+ "checks": [],
2072
+ "pk": true
2073
+ }
2074
+ },
2075
+ "dbo.table_with_composite_primary_and_unique_indexes": {
2076
+ "col1": {
2077
+ "checks": [],
2078
+ "pk": true
2079
+ },
2080
+ "col2": {
2081
+ "checks": [],
2082
+ "pk": true
2083
+ },
2084
+ "col3": {
2085
+ "checks": [],
2086
+ "unique": true
2087
+ },
2088
+ "col4": {
2089
+ "checks": [],
2090
+ "unique": true
2091
+ }
2092
+ },
2093
+ "dbo.user_define_data_types": {
2094
+ "id": {
2095
+ "checks": [],
2096
+ "pk": true
2097
+ },
2098
+ "gender": {
2099
+ "checks": [
2100
+ {
2101
+ "name": "chk_gender",
2102
+ "expression": "[gender]='Other' OR [gender]='Female' OR [gender]='Male'"
2103
+ }
2104
+ ]
2105
+ }
2106
+ },
2107
+ "dbo.users": {
2108
+ "user_id": {
2109
+ "checks": [],
2110
+ "pk": true
2111
+ },
2112
+ "email": {
2113
+ "checks": [
2114
+ {
2115
+ "name": "chk_email_format",
2116
+ "expression": "[email] like '%_@_%._%'"
2117
+ }
2118
+ ],
2119
+ "unique": true
2120
+ },
2121
+ "username": {
2122
+ "checks": [],
2123
+ "unique": true
2124
+ },
2125
+ "date_of_birth": {
2126
+ "checks": [
2127
+ {
2128
+ "name": "chk_age",
2129
+ "expression": "[date_of_birth]<=dateadd(year,(-13),getdate())"
2130
+ }
2131
+ ]
2132
+ }
2133
+ },
2134
+ "dbo.TestDescriptionTable": {
2135
+ "Name": {
2136
+ "checks": [
2137
+ {
2138
+ "name": "chk_name_len",
2139
+ "expression": "len([Name])>(6)"
2140
+ }
2141
+ ]
2142
+ }
2143
+ }
2144
+ },
2145
+ "checks": {
2146
+ "dbo.user_define_data_types": [
2147
+ {
2148
+ "name": "chk_age_range",
2149
+ "expression": "[age_start]<=[age_end]"
2150
+ }
2151
+ ],
2152
+ "dbo.AddressInfo": [
2153
+ {
2154
+ "name": "CK_Address_Valid",
2155
+ "expression": "([AddressID]='176029FA-D6D3-49E1-A48C-000000000002' OR [AddressID]='176029FA-D6D3-49E1-A48C-000000000001') AND ([AddressFormatID]='176029FA-D6D3-49E1-A48C-000000000002' OR [AddressFormatID]='176029FA-D6D3-49E1-A48C-000000000001')"
2156
+ }
2157
+ ],
2158
+ "dbo.AddressInfo2": [
2159
+ {
2160
+ "name": "CK_Address_Valid2",
2161
+ "expression": "([A1]='333' OR [A1]='2222' OR [A1]='1111') AND ([A2]='2222' OR [A2]='1111') AND ([A3]='1111' OR [A3]='2222') AND ([A4]='3333' OR [A4]='2222')"
2162
+ }
2163
+ ]
2164
+ }
2165
+ }