UNPKG

@dbml/connector

Version:

This package was created to fetch the schema JSON from many kind of databases.

1,619 lines 32.9 kB
{ "tables": [ { "name": "table1", "schemaName": "dbml_test", "note": { "value": "" } }, { "name": "table3", "schemaName": "dbml_test", "note": { "value": "" } }, { "name": "users", "schemaName": "public", "note": { "value": "" } }, { "name": "products", "schemaName": "public", "note": { "value": "" } }, { "name": "orders", "schemaName": "public", "note": { "value": "" } }, { "name": "order_items", "schemaName": "public", "note": { "value": "" } }, { "name": "all_string_types", "schemaName": "public", "note": { "value": "" } }, { "name": "all_default_values", "schemaName": "public", "note": { "value": "" } }, { "name": "user_define_data_types", "schemaName": "public", "note": { "value": "" } }, { "name": "table_with_comments", "schemaName": "public", "note": { "value": "This table stores information about various items. Such as: 'id', 'name', 'description'" } }, { "name": "authors", "schemaName": "public", "note": { "value": "" } }, { "name": "books", "schemaName": "public", "note": { "value": "" } }, { "name": "table1", "schemaName": "public", "note": { "value": "" } }, { "name": "table2", "schemaName": "public", "note": { "value": "" } } ], "fields": { "dbml_test.table1": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "status", "type": { "type_name": "enum_type1", "schemaName": "dbml_test" }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "dbml_test.table3": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "status", "type": { "type_name": "enum_type3", "schemaName": "dbml_test" }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.users": [ { "name": "user_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "username", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "email", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "password_hash", "type": { "type_name": "varchar(255)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "first_name", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "last_name", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "full_name", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "date_of_birth", "type": { "type_name": "date", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "created_at", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "last_login", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "is_active", "type": { "type_name": "bool", "schemaName": null }, "dbdefault": { "type": "boolean", "value": "true" }, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.products": [ { "name": "product_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "name", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "description", "type": { "type_name": "text", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "price", "type": { "type_name": "numeric(10,2)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "stock_quantity", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": { "type": "number", "value": "0" }, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "category", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "created_at", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "updated_at", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "is_available", "type": { "type_name": "bool", "schemaName": null }, "dbdefault": { "type": "boolean", "value": "true" }, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.orders": [ { "name": "order_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "user_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "order_date", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "total_amount", "type": { "type_name": "numeric(12,2)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "status", "type": { "type_name": "varchar(20)", "schemaName": null }, "dbdefault": { "type": "string", "value": "pending" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "shipping_address", "type": { "type_name": "text", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "billing_address", "type": { "type_name": "text", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } } ], "public.order_items": [ { "name": "order_item_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "order_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "product_id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "quantity", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "unit_price", "type": { "type_name": "numeric(10,2)", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } } ], "public.all_string_types": [ { "name": "text_col", "type": { "type_name": "text", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_text" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "varchar_col", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_varchar" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "char_col", "type": { "type_name": "bpchar(10)", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_char" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "character_varying_col", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_character_varying" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "character_col", "type": { "type_name": "bpchar(5)", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_character" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "name_col", "type": { "type_name": "name", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_name" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "bpchar_col", "type": { "type_name": "bpchar(15)", "schemaName": null }, "dbdefault": { "type": "string", "value": "default_bpchar" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "text_array_col", "type": { "type_name": "text[]", "schemaName": null }, "dbdefault": { "type": "expression", "value": "ARRAY['default_text1', 'default_text2']" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "json_col", "type": { "type_name": "json", "schemaName": null }, "dbdefault": { "type": "expression", "value": "{\"default_key\": \"default_value\"}" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "jsonb_col", "type": { "type_name": "jsonb", "schemaName": null }, "dbdefault": { "type": "expression", "value": "{\"default_key\": \"default_value\"}" }, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.all_default_values": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "boolean_col", "type": { "type_name": "bool", "schemaName": null }, "dbdefault": { "type": "boolean", "value": "true" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "integer_col", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": { "type": "number", "value": "42" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "numeric_col", "type": { "type_name": "numeric(10,2)", "schemaName": null }, "dbdefault": { "type": "number", "value": "99.99" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "date_col", "type": { "type_name": "date", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_DATE" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "date_col_specific", "type": { "type_name": "date", "schemaName": null }, "dbdefault": { "type": "string", "value": "2024-01-01" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "timestamp_col", "type": { "type_name": "timestamp", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "timestamp_col_specific", "type": { "type_name": "timestamp", "schemaName": null }, "dbdefault": { "type": "string", "value": "2024-01-01 12:00:00" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "date_plus_7_days", "type": { "type_name": "date", "schemaName": null }, "dbdefault": { "type": "expression", "value": "(CURRENT_DATE + '7 days'::interval)" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "date_minus_30_days", "type": { "type_name": "date", "schemaName": null }, "dbdefault": { "type": "expression", "value": "(CURRENT_DATE - '30 days'::interval)" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "timestamp_plus_1_hour", "type": { "type_name": "timestamp", "schemaName": null }, "dbdefault": { "type": "expression", "value": "(CURRENT_TIMESTAMP + '01:00:00'::interval)" }, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "timestamp_minus_15_minutes", "type": { "type_name": "timestamp", "schemaName": null }, "dbdefault": { "type": "expression", "value": "(CURRENT_TIMESTAMP - '00:15:00'::interval)" }, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.user_define_data_types": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "name", "type": { "type_name": "varchar(50)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "gender", "type": { "type_name": "gender_type", "schemaName": "public" }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "age", "type": { "type_name": "int4range", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "height", "type": { "type_name": "float8", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "weight", "type": { "type_name": "float8", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.table_with_comments": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "Unique identifier for each item." } }, { "name": "name", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "Item's name." } }, { "name": "description", "type": { "type_name": "text", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "Item's description" } }, { "name": "created_at", "type": { "type_name": "timestamptz", "schemaName": null }, "dbdefault": { "type": "expression", "value": "CURRENT_TIMESTAMP" }, "not_null": false, "increment": false, "note": { "value": "Timestamp when the item was created." } } ], "public.authors": [ { "name": "authorid", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "nationalityid", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": false, "note": { "value": "" } }, { "name": "authorname", "type": { "type_name": "varchar(100)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "birthyear", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.books": [ { "name": "bookid", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "authorid", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "nationalityid", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "isbn", "type": { "type_name": "varchar(20)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } }, { "name": "title", "type": { "type_name": "varchar(200)", "schemaName": null }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.table1": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "status", "type": { "type_name": "enum_type1", "schemaName": "public" }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ], "public.table2": [ { "name": "id", "type": { "type_name": "int4", "schemaName": null }, "dbdefault": null, "not_null": true, "increment": true, "note": { "value": "" } }, { "name": "status", "type": { "type_name": "enum_type2", "schemaName": "public" }, "dbdefault": null, "not_null": false, "increment": false, "note": { "value": "" } } ] }, "refs": [ { "name": "fk_authornationality", "endpoints": [ { "tableName": "books", "schemaName": "public", "fieldNames": [ "authorid", "nationalityid" ], "relation": "*" }, { "tableName": "authors", "schemaName": "public", "fieldNames": [ "authorid", "nationalityid" ], "relation": "1" } ], "onDelete": "CASCADE", "onUpdate": null }, { "name": "fk_order", "endpoints": [ { "tableName": "order_items", "schemaName": "public", "fieldNames": [ "order_id" ], "relation": "*" }, { "tableName": "orders", "schemaName": "public", "fieldNames": [ "order_id" ], "relation": "1" } ], "onDelete": "CASCADE", "onUpdate": null }, { "name": "fk_product", "endpoints": [ { "tableName": "order_items", "schemaName": "public", "fieldNames": [ "product_id" ], "relation": "*" }, { "tableName": "products", "schemaName": "public", "fieldNames": [ "product_id" ], "relation": "1" } ], "onDelete": "CASCADE", "onUpdate": null }, { "name": "fk_user", "endpoints": [ { "tableName": "orders", "schemaName": "public", "fieldNames": [ "user_id" ], "relation": "*" }, { "tableName": "users", "schemaName": "public", "fieldNames": [ "user_id" ], "relation": "1" } ], "onDelete": "CASCADE", "onUpdate": null } ], "enums": [ { "name": "enum_type1", "schemaName": "dbml_test", "values": [ { "name": "value1" }, { "name": "value2" } ] }, { "name": "enum_type3", "schemaName": "dbml_test", "values": [ { "name": "value4" }, { "name": "value5" } ] }, { "name": "enum_type1", "schemaName": "public", "values": [ { "name": "value1" }, { "name": "value2" } ] }, { "name": "enum_type2", "schemaName": "public", "values": [ { "name": "value1" }, { "name": "value3" } ] }, { "name": "gender_type", "schemaName": "public", "values": [ { "name": "Male" }, { "name": "Female" }, { "name": "Other" } ] } ], "indexes": { "public.authors": [ { "name": "authors_pkey", "type": "btree", "columns": [ { "type": "column", "value": "authorid" }, { "type": "column", "value": "nationalityid" } ] } ], "public.order_items": [ { "name": "uq_order_product", "type": "btree", "columns": [ { "type": "column", "value": "order_id" }, { "type": "column", "value": "product_id" } ] }, { "name": "idx_order_items_order_product", "type": "btree", "columns": [ { "type": "column", "value": "order_id" }, { "type": "column", "value": "product_id" } ] } ], "public.orders": [ { "name": "idx_orders_user_date", "type": "btree", "columns": [ { "type": "column", "value": "user_id" }, { "type": "column", "value": "order_date" } ] } ], "public.products": [ { "name": "idx_products_category", "type": "btree", "columns": [ { "type": "column", "value": "category" } ] } ], "public.users": [ { "name": "User Name", "type": "btree", "columns": [ { "type": "column", "value": "full_name" } ] }, { "name": "idx_users_email", "type": "btree", "columns": [ { "type": "column", "value": "email" } ] }, { "name": "users_is_active_lower_idx", "type": "btree", "columns": [ { "type": "column", "value": "is_active" }, { "type": "expression", "value": "lower((full_name)::text)" } ] } ] }, "tableConstraints": { "public.all_default_values": { "id": { "pk": true } }, "public.books": { "bookid": { "pk": true }, "isbn": { "unique": true } }, "public.order_items": { "order_item_id": { "pk": true } }, "public.orders": { "order_id": { "pk": true } }, "public.products": { "product_id": { "pk": true } }, "public.table1": { "id": { "pk": true } }, "dbml_test.table1": { "id": { "pk": true } }, "public.table2": { "id": { "pk": true } }, "dbml_test.table3": { "id": { "pk": true } }, "public.table_with_comments": { "id": { "pk": true } }, "public.user_define_data_types": { "id": { "pk": true } }, "public.users": { "user_id": { "pk": true }, "email": { "unique": true }, "username": { "unique": true } } } }