@dbml/cli 2.2.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__test__/cli.test.js +3 -1
- package/__test__/dbml2sql/filename --mysql --out-file/dbml-error.log +36 -0
- package/__test__/dbml2sql/filename --mysql --out-file/expect-out-files/schema.sql +4 -4
- package/__test__/dbml2sql/filename --mysql --out-file/out-files/schema.sql +5 -5
- package/__test__/dbml2sql/filename --mysql stdout/stdout.txt +4 -4
- package/__test__/dbml2sql/filename --out-file/dbml-error.log +36 -0
- package/__test__/dbml2sql/filename --out-file/expect-out-files/schema.sql +4 -4
- package/__test__/dbml2sql/filename --out-file/out-files/schema.sql +5 -5
- package/__test__/dbml2sql/filename --postgres --out-file/dbml-error.log +24 -0
- package/__test__/dbml2sql/filename --postgres --out-file/expect-out-files/schema.sql +4 -4
- package/__test__/dbml2sql/filename --postgres --out-file/out-files/schema.sql +5 -5
- package/__test__/dbml2sql/filename --postgres stdout/stdout.txt +4 -4
- package/__test__/dbml2sql/filename stdout/stdout.txt +4 -4
- package/__test__/dbml2sql/filenames --mysql --out-file/dbml-error.log +24 -0
- package/__test__/dbml2sql/filenames --mysql --out-file/expect-out-files/schema.sql +2 -2
- package/__test__/dbml2sql/filenames --mysql --out-file/out-files/schema.sql +3 -3
- package/__test__/dbml2sql/filenames --mysql stdout/stdout.txt +2 -2
- package/__test__/dbml2sql/filenames --out-file/dbml-error.log +24 -0
- package/__test__/dbml2sql/filenames --out-file/expect-out-files/schema.sql +2 -2
- package/__test__/dbml2sql/filenames --out-file/out-files/schema.sql +3 -3
- package/__test__/dbml2sql/filenames --postgres --out-file/dbml-error.log +24 -0
- package/__test__/dbml2sql/filenames --postgres --out-file/expect-out-files/schema.sql +2 -2
- package/__test__/dbml2sql/filenames --postgres --out-file/out-files/schema.sql +3 -3
- package/__test__/dbml2sql/filenames --postgres stdout/stdout.txt +2 -2
- package/__test__/dbml2sql/filenames stdout/stdout.txt +2 -2
- package/__test__/dbml2sql/multiple_schema_mssql/dbml-error.log +24 -0
- package/__test__/dbml2sql/multiple_schema_mssql/expect-out-files/multiple_schema.out.sql +58 -0
- package/__test__/dbml2sql/multiple_schema_mssql/in-files/multiple_schema.in.dbml +62 -0
- package/__test__/dbml2sql/multiple_schema_mssql/options.json +8 -0
- package/__test__/dbml2sql/multiple_schema_mssql/out-files/multiple_schema.out.sql +62 -0
- package/__test__/dbml2sql/multiple_schema_mssql/stdout.txt +1 -0
- package/__test__/dbml2sql/multiple_schema_mysql/dbml-error.log +24 -0
- package/__test__/dbml2sql/multiple_schema_mysql/expect-out-files/multiple_schema.out.sql +46 -0
- package/__test__/dbml2sql/multiple_schema_mysql/in-files/multiple_schema.in.dbml +62 -0
- package/__test__/dbml2sql/multiple_schema_mysql/options.json +8 -0
- package/__test__/dbml2sql/multiple_schema_mysql/out-files/multiple_schema.out.sql +50 -0
- package/__test__/dbml2sql/multiple_schema_mysql/stdout.txt +1 -0
- package/__test__/dbml2sql/multiple_schema_pg/dbml-error.log +24 -0
- package/__test__/dbml2sql/multiple_schema_pg/expect-out-files/multiple_schema.out.sql +63 -0
- package/__test__/dbml2sql/multiple_schema_pg/in-files/multiple_schema.in.dbml +62 -0
- package/__test__/dbml2sql/multiple_schema_pg/options.json +8 -0
- package/__test__/dbml2sql/multiple_schema_pg/out-files/multiple_schema.out.sql +67 -0
- package/__test__/dbml2sql/multiple_schema_pg/stdout.txt +1 -0
- package/__test__/dbml2sql/syntax-error/dbml-error.log +1431 -513
- package/__test__/sql2dbml/filename --mssql --out-file/dbml-error.log +51 -0
- package/__test__/sql2dbml/filename --mssql --out-file/expect-out-files/schema.dbml +25 -0
- package/__test__/sql2dbml/filename --mssql --out-file/in-files/schema.sql +20 -0
- package/__test__/sql2dbml/filename --mssql --out-file/options.json +8 -0
- package/__test__/sql2dbml/filename --mssql --out-file/out-files/schema.dbml +25 -0
- package/__test__/sql2dbml/filename --mssql --out-file/stdout.txt +1 -0
- package/__test__/sql2dbml/filename --mysql --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/filename --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/filename --postgres --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/filenames --mysql --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/filenames --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/filenames --postgres --out-file/dbml-error.log +24 -0
- package/__test__/sql2dbml/multiple_schema_mssql/dbml-error.log +104 -0
- package/__test__/sql2dbml/multiple_schema_mssql/expect-out-files/multiple_schema.out.dbml +103 -0
- package/__test__/sql2dbml/multiple_schema_mssql/in-files/multiple_schema.in.sql +71 -0
- package/__test__/sql2dbml/multiple_schema_mssql/options.json +8 -0
- package/__test__/sql2dbml/multiple_schema_mssql/out-files/multiple_schema.out.dbml +103 -0
- package/__test__/sql2dbml/multiple_schema_mssql/stdout.txt +1 -0
- package/__test__/sql2dbml/multiple_schema_mysql/dbml-error.log +104 -0
- package/__test__/sql2dbml/multiple_schema_mysql/expect-out-files/multiple_schema.out.dbml +91 -0
- package/__test__/sql2dbml/multiple_schema_mysql/in-files/multiple_schema.in.sql +48 -0
- package/__test__/sql2dbml/multiple_schema_mysql/options.json +8 -0
- package/__test__/sql2dbml/multiple_schema_mysql/out-files/multiple_schema.out.dbml +91 -0
- package/__test__/sql2dbml/multiple_schema_mysql/stdout.txt +1 -0
- package/__test__/sql2dbml/multiple_schema_pg/dbml-error.log +104 -0
- package/__test__/sql2dbml/multiple_schema_pg/expect-out-files/multiple_schema.out.dbml +68 -0
- package/__test__/sql2dbml/multiple_schema_pg/in-files/multiple_schema.in.sql +71 -0
- package/__test__/sql2dbml/multiple_schema_pg/options.json +8 -0
- package/__test__/sql2dbml/multiple_schema_pg/out-files/multiple_schema.out.dbml +68 -0
- package/__test__/sql2dbml/multiple_schema_pg/stdout.txt +1 -0
- package/__test__/sql2dbml/syntax-error/dbml-error.log +1404 -513
- package/bin/dbml2sql.js +0 -0
- package/bin/sql2dbml.js +0 -0
- package/dbml-error.log +980 -0
- package/lib/cli/export.js +1 -1
- package/lib/cli/import.js +1 -1
- package/lib/cli/index.js +1 -1
- package/package.json +4 -4
- package/src/cli/export.js +1 -1
- package/src/cli/import.js +1 -1
- package/src/cli/index.js +1 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
CREATE SCHEMA [schemaB]
|
|
2
|
+
GO
|
|
3
|
+
|
|
4
|
+
CREATE SCHEMA [ecommerce]
|
|
5
|
+
GO
|
|
6
|
+
|
|
7
|
+
CREATE SCHEMA [schemaA]
|
|
8
|
+
GO
|
|
9
|
+
|
|
10
|
+
CREATE TABLE [users] (
|
|
11
|
+
[id] int PRIMARY KEY,
|
|
12
|
+
[name] nvarchar(255),
|
|
13
|
+
[pjs] nvarchar(255) NOT NULL CHECK ([pjs] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
14
|
+
[pjs2] nvarchar(255) NOT NULL CHECK ([pjs2] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
15
|
+
[pg] nvarchar(255) NOT NULL CHECK ([pg] IN ('male', 'female')),
|
|
16
|
+
[pg2] nvarchar(255) NOT NULL CHECK ([pg2] IN ('male2', 'female2'))
|
|
17
|
+
)
|
|
18
|
+
GO
|
|
19
|
+
|
|
20
|
+
CREATE TABLE [products] (
|
|
21
|
+
[id] int PRIMARY KEY,
|
|
22
|
+
[name] nvarchar(255)
|
|
23
|
+
)
|
|
24
|
+
GO
|
|
25
|
+
|
|
26
|
+
CREATE TABLE [ecommerce].[users] (
|
|
27
|
+
[id] int PRIMARY KEY,
|
|
28
|
+
[name] nvarchar(255),
|
|
29
|
+
[ejs] nvarchar(255) NOT NULL CHECK ([ejs] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
30
|
+
[ejs2] nvarchar(255) NOT NULL CHECK ([ejs2] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
31
|
+
[eg] nvarchar(255) NOT NULL CHECK ([eg] IN ('male', 'female')),
|
|
32
|
+
[eg2] nvarchar(255) NOT NULL CHECK ([eg2] IN ('male2', 'female2'))
|
|
33
|
+
)
|
|
34
|
+
GO
|
|
35
|
+
|
|
36
|
+
CREATE TABLE [schemaA].[products] (
|
|
37
|
+
[id] int PRIMARY KEY,
|
|
38
|
+
[name] nvarchar(255)
|
|
39
|
+
)
|
|
40
|
+
GO
|
|
41
|
+
|
|
42
|
+
CREATE TABLE [schemaA].[locations] (
|
|
43
|
+
[id] int PRIMARY KEY,
|
|
44
|
+
[name] nvarchar(255)
|
|
45
|
+
)
|
|
46
|
+
GO
|
|
47
|
+
|
|
48
|
+
ALTER TABLE [ecommerce].[users] ADD FOREIGN KEY ([id]) REFERENCES [users] ([id])
|
|
49
|
+
GO
|
|
50
|
+
|
|
51
|
+
ALTER TABLE [ecommerce].[users] ADD CONSTRAINT [name_optional] FOREIGN KEY ([id]) REFERENCES [users] ([name])
|
|
52
|
+
GO
|
|
53
|
+
|
|
54
|
+
ALTER TABLE [schemaA].[products] ADD FOREIGN KEY ([name]) REFERENCES [ecommerce].[users] ([id])
|
|
55
|
+
GO
|
|
56
|
+
|
|
57
|
+
ALTER TABLE [schemaA].[locations] ADD FOREIGN KEY ([name]) REFERENCES [users] ([id])
|
|
58
|
+
GO
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Table "ecommerce"."users" as EU {
|
|
2
|
+
id int [pk]
|
|
3
|
+
name varchar
|
|
4
|
+
ejs job_status
|
|
5
|
+
ejs2 public.job_status
|
|
6
|
+
eg schemaB.gender
|
|
7
|
+
eg2 gender
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
Table public.users {
|
|
11
|
+
id int [pk]
|
|
12
|
+
name varchar
|
|
13
|
+
pjs job_status
|
|
14
|
+
pjs2 public.job_status
|
|
15
|
+
pg schemaB.gender
|
|
16
|
+
pg2 gender
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
Table products {
|
|
20
|
+
id int [pk]
|
|
21
|
+
name varchar
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
Table schemaA.products as A {
|
|
25
|
+
id int [pk]
|
|
26
|
+
name varchar [ref: > EU.id]
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
Table schemaA.locations {
|
|
30
|
+
id int [pk]
|
|
31
|
+
name varchar [ref: > users.id]
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
Ref: "public".users.id < EU.id
|
|
35
|
+
|
|
36
|
+
Ref name_optional {
|
|
37
|
+
users.name < ecommerce.users.id
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
TableGroup tablegroup_name { // tablegroup is case-insensitive.
|
|
41
|
+
public.products
|
|
42
|
+
users
|
|
43
|
+
ecommerce.users
|
|
44
|
+
A
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
enum job_status {
|
|
48
|
+
created2 [note: 'abcdef']
|
|
49
|
+
running2
|
|
50
|
+
done2
|
|
51
|
+
failure2
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
enum schemaB.gender {
|
|
55
|
+
male
|
|
56
|
+
female
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
enum gender {
|
|
60
|
+
male2
|
|
61
|
+
female2
|
|
62
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
-- SQL dump generated using DBML (dbml-lang.org)
|
|
2
|
+
-- Database: SQL Server
|
|
3
|
+
-- Generated at: 2022-03-08T03:40:58.063Z
|
|
4
|
+
|
|
5
|
+
CREATE SCHEMA [schemaB]
|
|
6
|
+
GO
|
|
7
|
+
|
|
8
|
+
CREATE SCHEMA [ecommerce]
|
|
9
|
+
GO
|
|
10
|
+
|
|
11
|
+
CREATE SCHEMA [schemaA]
|
|
12
|
+
GO
|
|
13
|
+
|
|
14
|
+
CREATE TABLE [users] (
|
|
15
|
+
[id] int PRIMARY KEY,
|
|
16
|
+
[name] nvarchar(255),
|
|
17
|
+
[pjs] nvarchar(255) NOT NULL CHECK ([pjs] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
18
|
+
[pjs2] nvarchar(255) NOT NULL CHECK ([pjs2] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
19
|
+
[pg] nvarchar(255) NOT NULL CHECK ([pg] IN ('male', 'female')),
|
|
20
|
+
[pg2] nvarchar(255) NOT NULL CHECK ([pg2] IN ('male2', 'female2'))
|
|
21
|
+
)
|
|
22
|
+
GO
|
|
23
|
+
|
|
24
|
+
CREATE TABLE [products] (
|
|
25
|
+
[id] int PRIMARY KEY,
|
|
26
|
+
[name] nvarchar(255)
|
|
27
|
+
)
|
|
28
|
+
GO
|
|
29
|
+
|
|
30
|
+
CREATE TABLE [ecommerce].[users] (
|
|
31
|
+
[id] int PRIMARY KEY,
|
|
32
|
+
[name] nvarchar(255),
|
|
33
|
+
[ejs] nvarchar(255) NOT NULL CHECK ([ejs] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
34
|
+
[ejs2] nvarchar(255) NOT NULL CHECK ([ejs2] IN ('created2', 'running2', 'done2', 'failure2')),
|
|
35
|
+
[eg] nvarchar(255) NOT NULL CHECK ([eg] IN ('male', 'female')),
|
|
36
|
+
[eg2] nvarchar(255) NOT NULL CHECK ([eg2] IN ('male2', 'female2'))
|
|
37
|
+
)
|
|
38
|
+
GO
|
|
39
|
+
|
|
40
|
+
CREATE TABLE [schemaA].[products] (
|
|
41
|
+
[id] int PRIMARY KEY,
|
|
42
|
+
[name] nvarchar(255)
|
|
43
|
+
)
|
|
44
|
+
GO
|
|
45
|
+
|
|
46
|
+
CREATE TABLE [schemaA].[locations] (
|
|
47
|
+
[id] int PRIMARY KEY,
|
|
48
|
+
[name] nvarchar(255)
|
|
49
|
+
)
|
|
50
|
+
GO
|
|
51
|
+
|
|
52
|
+
ALTER TABLE [ecommerce].[users] ADD FOREIGN KEY ([id]) REFERENCES [users] ([id])
|
|
53
|
+
GO
|
|
54
|
+
|
|
55
|
+
ALTER TABLE [ecommerce].[users] ADD CONSTRAINT [name_optional] FOREIGN KEY ([id]) REFERENCES [users] ([name])
|
|
56
|
+
GO
|
|
57
|
+
|
|
58
|
+
ALTER TABLE [schemaA].[products] ADD FOREIGN KEY ([name]) REFERENCES [ecommerce].[users] ([id])
|
|
59
|
+
GO
|
|
60
|
+
|
|
61
|
+
ALTER TABLE [schemaA].[locations] ADD FOREIGN KEY ([name]) REFERENCES [users] ([id])
|
|
62
|
+
GO
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
✔ Generated SQL dump file (SQL Server): multiple_schema.out.sql
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
2021-07-13T12:37:44.406Z
|
|
2
|
+
TypeError: Cannot read property 'tick' of undefined
|
|
3
|
+
at exportHandler (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\export.js:37:56)
|
|
4
|
+
at dbml2sql (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\index.js:19:3)
|
|
5
|
+
at Object.<anonymous> (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\__test__\dbml2sql_bin.js:5:1)
|
|
6
|
+
at Module._compile (internal/modules/cjs/loader.js:1085:14)
|
|
7
|
+
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
|
|
8
|
+
at Module.load (internal/modules/cjs/loader.js:950:32)
|
|
9
|
+
at Function.Module._load (internal/modules/cjs/loader.js:790:14)
|
|
10
|
+
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
|
|
11
|
+
at internal/main/run_main_module.js:17:47
|
|
12
|
+
|
|
13
|
+
2021-07-13T12:58:23.999Z
|
|
14
|
+
TypeError: Cannot read property 'tick' of undefined
|
|
15
|
+
at exportHandler (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\export.js:37:49)
|
|
16
|
+
at dbml2sql (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\index.js:19:3)
|
|
17
|
+
at Object.<anonymous> (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\__test__\dbml2sql_bin.js:5:1)
|
|
18
|
+
at Module._compile (internal/modules/cjs/loader.js:1085:14)
|
|
19
|
+
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
|
|
20
|
+
at Module.load (internal/modules/cjs/loader.js:950:32)
|
|
21
|
+
at Function.Module._load (internal/modules/cjs/loader.js:790:14)
|
|
22
|
+
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
|
|
23
|
+
at internal/main/run_main_module.js:17:47
|
|
24
|
+
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
CREATE SCHEMA `schemaB`;
|
|
2
|
+
|
|
3
|
+
CREATE SCHEMA `ecommerce`;
|
|
4
|
+
|
|
5
|
+
CREATE SCHEMA `schemaA`;
|
|
6
|
+
|
|
7
|
+
CREATE TABLE `users` (
|
|
8
|
+
`id` int PRIMARY KEY,
|
|
9
|
+
`name` varchar(255),
|
|
10
|
+
`pjs` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
11
|
+
`pjs2` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
12
|
+
`pg` ENUM ('male', 'female'),
|
|
13
|
+
`pg2` ENUM ('male2', 'female2')
|
|
14
|
+
);
|
|
15
|
+
|
|
16
|
+
CREATE TABLE `products` (
|
|
17
|
+
`id` int PRIMARY KEY,
|
|
18
|
+
`name` varchar(255)
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
CREATE TABLE `ecommerce`.`users` (
|
|
22
|
+
`id` int PRIMARY KEY,
|
|
23
|
+
`name` varchar(255),
|
|
24
|
+
`ejs` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
25
|
+
`ejs2` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
26
|
+
`eg` ENUM ('male', 'female'),
|
|
27
|
+
`eg2` ENUM ('male2', 'female2')
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
CREATE TABLE `schemaA`.`products` (
|
|
31
|
+
`id` int PRIMARY KEY,
|
|
32
|
+
`name` varchar(255)
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
CREATE TABLE `schemaA`.`locations` (
|
|
36
|
+
`id` int PRIMARY KEY,
|
|
37
|
+
`name` varchar(255)
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
ALTER TABLE `ecommerce`.`users` ADD FOREIGN KEY (`id`) REFERENCES `users` (`id`);
|
|
41
|
+
|
|
42
|
+
ALTER TABLE `ecommerce`.`users` ADD CONSTRAINT `name_optional` FOREIGN KEY (`id`) REFERENCES `users` (`name`);
|
|
43
|
+
|
|
44
|
+
ALTER TABLE `schemaA`.`products` ADD FOREIGN KEY (`name`) REFERENCES `ecommerce`.`users` (`id`);
|
|
45
|
+
|
|
46
|
+
ALTER TABLE `schemaA`.`locations` ADD FOREIGN KEY (`name`) REFERENCES `users` (`id`);
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Table "ecommerce"."users" as EU {
|
|
2
|
+
id int [pk]
|
|
3
|
+
name varchar
|
|
4
|
+
ejs job_status
|
|
5
|
+
ejs2 public.job_status
|
|
6
|
+
eg schemaB.gender
|
|
7
|
+
eg2 gender
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
Table public.users {
|
|
11
|
+
id int [pk]
|
|
12
|
+
name varchar
|
|
13
|
+
pjs job_status
|
|
14
|
+
pjs2 public.job_status
|
|
15
|
+
pg schemaB.gender
|
|
16
|
+
pg2 gender
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
Table products {
|
|
20
|
+
id int [pk]
|
|
21
|
+
name varchar
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
Table schemaA.products as A {
|
|
25
|
+
id int [pk]
|
|
26
|
+
name varchar [ref: > EU.id]
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
Table schemaA.locations {
|
|
30
|
+
id int [pk]
|
|
31
|
+
name varchar [ref: > users.id]
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
Ref: "public".users.id < EU.id
|
|
35
|
+
|
|
36
|
+
Ref name_optional {
|
|
37
|
+
users.name < ecommerce.users.id
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
TableGroup tablegroup_name { // tablegroup is case-insensitive.
|
|
41
|
+
public.products
|
|
42
|
+
users
|
|
43
|
+
ecommerce.users
|
|
44
|
+
A
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
enum job_status {
|
|
48
|
+
created2 [note: 'abcdef']
|
|
49
|
+
running2
|
|
50
|
+
done2
|
|
51
|
+
failure2
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
enum schemaB.gender {
|
|
55
|
+
male
|
|
56
|
+
female
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
enum gender {
|
|
60
|
+
male2
|
|
61
|
+
female2
|
|
62
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
-- SQL dump generated using DBML (dbml-lang.org)
|
|
2
|
+
-- Database: MySQL
|
|
3
|
+
-- Generated at: 2022-03-08T03:41:00.226Z
|
|
4
|
+
|
|
5
|
+
CREATE SCHEMA `schemaB`;
|
|
6
|
+
|
|
7
|
+
CREATE SCHEMA `ecommerce`;
|
|
8
|
+
|
|
9
|
+
CREATE SCHEMA `schemaA`;
|
|
10
|
+
|
|
11
|
+
CREATE TABLE `users` (
|
|
12
|
+
`id` int PRIMARY KEY,
|
|
13
|
+
`name` varchar(255),
|
|
14
|
+
`pjs` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
15
|
+
`pjs2` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
16
|
+
`pg` ENUM ('male', 'female'),
|
|
17
|
+
`pg2` ENUM ('male2', 'female2')
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
CREATE TABLE `products` (
|
|
21
|
+
`id` int PRIMARY KEY,
|
|
22
|
+
`name` varchar(255)
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
CREATE TABLE `ecommerce`.`users` (
|
|
26
|
+
`id` int PRIMARY KEY,
|
|
27
|
+
`name` varchar(255),
|
|
28
|
+
`ejs` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
29
|
+
`ejs2` ENUM ('created2', 'running2', 'done2', 'failure2'),
|
|
30
|
+
`eg` ENUM ('male', 'female'),
|
|
31
|
+
`eg2` ENUM ('male2', 'female2')
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
CREATE TABLE `schemaA`.`products` (
|
|
35
|
+
`id` int PRIMARY KEY,
|
|
36
|
+
`name` varchar(255)
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
CREATE TABLE `schemaA`.`locations` (
|
|
40
|
+
`id` int PRIMARY KEY,
|
|
41
|
+
`name` varchar(255)
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
ALTER TABLE `ecommerce`.`users` ADD FOREIGN KEY (`id`) REFERENCES `users` (`id`);
|
|
45
|
+
|
|
46
|
+
ALTER TABLE `ecommerce`.`users` ADD CONSTRAINT `name_optional` FOREIGN KEY (`id`) REFERENCES `users` (`name`);
|
|
47
|
+
|
|
48
|
+
ALTER TABLE `schemaA`.`products` ADD FOREIGN KEY (`name`) REFERENCES `ecommerce`.`users` (`id`);
|
|
49
|
+
|
|
50
|
+
ALTER TABLE `schemaA`.`locations` ADD FOREIGN KEY (`name`) REFERENCES `users` (`id`);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
✔ Generated SQL dump file (MySQL): multiple_schema.out.sql
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
2021-07-13T12:37:44.406Z
|
|
2
|
+
TypeError: Cannot read property 'tick' of undefined
|
|
3
|
+
at exportHandler (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\export.js:37:56)
|
|
4
|
+
at dbml2sql (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\index.js:19:3)
|
|
5
|
+
at Object.<anonymous> (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\__test__\dbml2sql_bin.js:5:1)
|
|
6
|
+
at Module._compile (internal/modules/cjs/loader.js:1085:14)
|
|
7
|
+
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
|
|
8
|
+
at Module.load (internal/modules/cjs/loader.js:950:32)
|
|
9
|
+
at Function.Module._load (internal/modules/cjs/loader.js:790:14)
|
|
10
|
+
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
|
|
11
|
+
at internal/main/run_main_module.js:17:47
|
|
12
|
+
|
|
13
|
+
2021-07-13T12:58:23.999Z
|
|
14
|
+
TypeError: Cannot read property 'tick' of undefined
|
|
15
|
+
at exportHandler (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\export.js:37:49)
|
|
16
|
+
at dbml2sql (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\src\cli\index.js:19:3)
|
|
17
|
+
at Object.<anonymous> (C:\Users\Inspiron101\Desktop\Holistics\dbml\packages\dbml-cli\__test__\dbml2sql_bin.js:5:1)
|
|
18
|
+
at Module._compile (internal/modules/cjs/loader.js:1085:14)
|
|
19
|
+
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
|
|
20
|
+
at Module.load (internal/modules/cjs/loader.js:950:32)
|
|
21
|
+
at Function.Module._load (internal/modules/cjs/loader.js:790:14)
|
|
22
|
+
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
|
|
23
|
+
at internal/main/run_main_module.js:17:47
|
|
24
|
+
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
CREATE SCHEMA "schemaB";
|
|
2
|
+
|
|
3
|
+
CREATE SCHEMA "ecommerce";
|
|
4
|
+
|
|
5
|
+
CREATE SCHEMA "schemaA";
|
|
6
|
+
|
|
7
|
+
CREATE TYPE "job_status" AS ENUM (
|
|
8
|
+
'created2',
|
|
9
|
+
'running2',
|
|
10
|
+
'done2',
|
|
11
|
+
'failure2'
|
|
12
|
+
);
|
|
13
|
+
|
|
14
|
+
CREATE TYPE "gender" AS ENUM (
|
|
15
|
+
'male2',
|
|
16
|
+
'female2'
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
CREATE TYPE "schemaB"."gender" AS ENUM (
|
|
20
|
+
'male',
|
|
21
|
+
'female'
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
CREATE TABLE "users" (
|
|
25
|
+
"id" int PRIMARY KEY,
|
|
26
|
+
"name" varchar,
|
|
27
|
+
"pjs" job_status,
|
|
28
|
+
"pjs2" job_status,
|
|
29
|
+
"pg" schemaB.gender,
|
|
30
|
+
"pg2" gender
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
CREATE TABLE "products" (
|
|
34
|
+
"id" int PRIMARY KEY,
|
|
35
|
+
"name" varchar
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
CREATE TABLE "ecommerce"."users" (
|
|
39
|
+
"id" int PRIMARY KEY,
|
|
40
|
+
"name" varchar,
|
|
41
|
+
"ejs" job_status,
|
|
42
|
+
"ejs2" job_status,
|
|
43
|
+
"eg" schemaB.gender,
|
|
44
|
+
"eg2" gender
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
CREATE TABLE "schemaA"."products" (
|
|
48
|
+
"id" int PRIMARY KEY,
|
|
49
|
+
"name" varchar
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
CREATE TABLE "schemaA"."locations" (
|
|
53
|
+
"id" int PRIMARY KEY,
|
|
54
|
+
"name" varchar
|
|
55
|
+
);
|
|
56
|
+
|
|
57
|
+
ALTER TABLE "ecommerce"."users" ADD FOREIGN KEY ("id") REFERENCES "users" ("id");
|
|
58
|
+
|
|
59
|
+
ALTER TABLE "ecommerce"."users" ADD CONSTRAINT "name_optional" FOREIGN KEY ("id") REFERENCES "users" ("name");
|
|
60
|
+
|
|
61
|
+
ALTER TABLE "schemaA"."products" ADD FOREIGN KEY ("name") REFERENCES "ecommerce"."users" ("id");
|
|
62
|
+
|
|
63
|
+
ALTER TABLE "schemaA"."locations" ADD FOREIGN KEY ("name") REFERENCES "users" ("id");
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
Table "ecommerce"."users" as EU {
|
|
2
|
+
id int [pk]
|
|
3
|
+
name varchar
|
|
4
|
+
ejs job_status
|
|
5
|
+
ejs2 public.job_status
|
|
6
|
+
eg schemaB.gender
|
|
7
|
+
eg2 gender
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
Table public.users {
|
|
11
|
+
id int [pk]
|
|
12
|
+
name varchar
|
|
13
|
+
pjs job_status
|
|
14
|
+
pjs2 public.job_status
|
|
15
|
+
pg schemaB.gender
|
|
16
|
+
pg2 gender
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
Table products {
|
|
20
|
+
id int [pk]
|
|
21
|
+
name varchar
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
Table schemaA.products as A {
|
|
25
|
+
id int [pk]
|
|
26
|
+
name varchar [ref: > EU.id]
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
Table schemaA.locations {
|
|
30
|
+
id int [pk]
|
|
31
|
+
name varchar [ref: > users.id]
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
Ref: "public".users.id < EU.id
|
|
35
|
+
|
|
36
|
+
Ref name_optional {
|
|
37
|
+
users.name < ecommerce.users.id
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
TableGroup tablegroup_name { // tablegroup is case-insensitive.
|
|
41
|
+
public.products
|
|
42
|
+
users
|
|
43
|
+
ecommerce.users
|
|
44
|
+
A
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
enum job_status {
|
|
48
|
+
created2 [note: 'abcdef']
|
|
49
|
+
running2
|
|
50
|
+
done2
|
|
51
|
+
failure2
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
enum schemaB.gender {
|
|
55
|
+
male
|
|
56
|
+
female
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
enum gender {
|
|
60
|
+
male2
|
|
61
|
+
female2
|
|
62
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
-- SQL dump generated using DBML (dbml-lang.org)
|
|
2
|
+
-- Database: PostgreSQL
|
|
3
|
+
-- Generated at: 2022-03-08T03:41:02.682Z
|
|
4
|
+
|
|
5
|
+
CREATE SCHEMA "schemaB";
|
|
6
|
+
|
|
7
|
+
CREATE SCHEMA "ecommerce";
|
|
8
|
+
|
|
9
|
+
CREATE SCHEMA "schemaA";
|
|
10
|
+
|
|
11
|
+
CREATE TYPE "job_status" AS ENUM (
|
|
12
|
+
'created2',
|
|
13
|
+
'running2',
|
|
14
|
+
'done2',
|
|
15
|
+
'failure2'
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
CREATE TYPE "gender" AS ENUM (
|
|
19
|
+
'male2',
|
|
20
|
+
'female2'
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
CREATE TYPE "schemaB"."gender" AS ENUM (
|
|
24
|
+
'male',
|
|
25
|
+
'female'
|
|
26
|
+
);
|
|
27
|
+
|
|
28
|
+
CREATE TABLE "users" (
|
|
29
|
+
"id" int PRIMARY KEY,
|
|
30
|
+
"name" varchar,
|
|
31
|
+
"pjs" job_status,
|
|
32
|
+
"pjs2" job_status,
|
|
33
|
+
"pg" schemaB.gender,
|
|
34
|
+
"pg2" gender
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
CREATE TABLE "products" (
|
|
38
|
+
"id" int PRIMARY KEY,
|
|
39
|
+
"name" varchar
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
CREATE TABLE "ecommerce"."users" (
|
|
43
|
+
"id" int PRIMARY KEY,
|
|
44
|
+
"name" varchar,
|
|
45
|
+
"ejs" job_status,
|
|
46
|
+
"ejs2" job_status,
|
|
47
|
+
"eg" schemaB.gender,
|
|
48
|
+
"eg2" gender
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
CREATE TABLE "schemaA"."products" (
|
|
52
|
+
"id" int PRIMARY KEY,
|
|
53
|
+
"name" varchar
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
CREATE TABLE "schemaA"."locations" (
|
|
57
|
+
"id" int PRIMARY KEY,
|
|
58
|
+
"name" varchar
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
ALTER TABLE "ecommerce"."users" ADD FOREIGN KEY ("id") REFERENCES "users" ("id");
|
|
62
|
+
|
|
63
|
+
ALTER TABLE "ecommerce"."users" ADD CONSTRAINT "name_optional" FOREIGN KEY ("id") REFERENCES "users" ("name");
|
|
64
|
+
|
|
65
|
+
ALTER TABLE "schemaA"."products" ADD FOREIGN KEY ("name") REFERENCES "ecommerce"."users" ("id");
|
|
66
|
+
|
|
67
|
+
ALTER TABLE "schemaA"."locations" ADD FOREIGN KEY ("name") REFERENCES "users" ("id");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
✔ Generated SQL dump file (PostgreSQL): multiple_schema.out.sql
|