db-modeling-markdown 1.0.5 → 2.0.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/CHANGELOG.md +24 -3
- package/CONTRIBUTING.md +78 -0
- package/README.md +63 -46
- package/dist/dialects/core/dbImportProvider.d.ts +5 -0
- package/dist/dialects/core/dbImportProvider.js +7 -0
- package/dist/dialects/core/dbImportProvider.js.map +1 -0
- package/dist/dialects/core/dbProvider.d.ts +19 -6
- package/dist/dialects/core/dbProvider.js +40 -6
- package/dist/dialects/core/dbProvider.js.map +1 -1
- package/dist/dialects/core/dbUtils.d.ts +35 -0
- package/dist/dialects/core/dbUtils.js +159 -0
- package/dist/dialects/core/dbUtils.js.map +1 -0
- package/dist/dialects/core/providerFactory.d.ts +3 -1
- package/dist/dialects/core/providerFactory.js +28 -3
- package/dist/dialects/core/providerFactory.js.map +1 -1
- package/dist/dialects/db2/db2Provider.d.ts +2 -1
- package/dist/dialects/db2/db2Provider.js +75 -46
- package/dist/dialects/db2/db2Provider.js.map +1 -1
- package/dist/dialects/mariadb/mariaDbImportProvider.d.ts +19 -0
- package/dist/dialects/mariadb/mariaDbImportProvider.js +254 -0
- package/dist/dialects/mariadb/mariaDbImportProvider.js.map +1 -0
- package/dist/dialects/mariadb/mariaDbProvider.d.ts +11 -11
- package/dist/dialects/mariadb/mariaDbProvider.js +128 -161
- package/dist/dialects/mariadb/mariaDbProvider.js.map +1 -1
- package/dist/dialects/mariadb/mariaDbUtil.d.ts +6 -0
- package/dist/dialects/mariadb/mariaDbUtil.js +23 -0
- package/dist/dialects/mariadb/mariaDbUtil.js.map +1 -0
- package/dist/dialects/mssql/msSqlProvider.d.ts +2 -1
- package/dist/dialects/mssql/msSqlProvider.js +128 -73
- package/dist/dialects/mssql/msSqlProvider.js.map +1 -1
- package/dist/dialects/mysql/mySqlImportProvider.d.ts +3 -0
- package/dist/dialects/mysql/mySqlImportProvider.js +8 -0
- package/dist/dialects/mysql/mySqlImportProvider.js.map +1 -0
- package/dist/dialects/mysql/mySqlProvider.d.ts +2 -20
- package/dist/dialects/mysql/mySqlProvider.js +2 -182
- package/dist/dialects/mysql/mySqlProvider.js.map +1 -1
- package/dist/dialects/oracle/oracleProvider.d.ts +5 -1
- package/dist/dialects/oracle/oracleProvider.js +111 -70
- package/dist/dialects/oracle/oracleProvider.js.map +1 -1
- package/dist/dialects/postgresql/postgreSqlProvider.d.ts +2 -1
- package/dist/dialects/postgresql/postgreSqlProvider.js +34 -31
- package/dist/dialects/postgresql/postgreSqlProvider.js.map +1 -1
- package/dist/dialects/sqlite/sqliteSqlProvider.d.ts +2 -1
- package/dist/dialects/sqlite/sqliteSqlProvider.js +38 -28
- package/dist/dialects/sqlite/sqliteSqlProvider.js.map +1 -1
- package/dist/index.d.ts +9 -4
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/code-flow/codeFlow.js.map +1 -1
- package/dist/lib/markdown-object/markdownModel.d.ts +0 -4
- package/dist/lib/markdown-object/markdownModel.js +0 -4
- package/dist/lib/markdown-object/markdownModel.js.map +1 -1
- package/dist/lib/markdown-object/markdownReader.d.ts +19 -0
- package/dist/lib/markdown-object/markdownReader.js +85 -28
- package/dist/lib/markdown-object/markdownReader.js.map +1 -1
- package/dist/lib/markdown-object/markdownWriter.d.ts +25 -1
- package/dist/lib/markdown-object/markdownWriter.js +117 -52
- package/dist/lib/markdown-object/markdownWriter.js.map +1 -1
- package/dist/lib/markdown-object/readerContext.js +3 -1
- package/dist/lib/markdown-object/readerContext.js.map +1 -1
- package/dist/lib/utils/fileHelper.d.ts +4 -0
- package/dist/lib/utils/fileHelper.js +20 -1
- package/dist/lib/utils/fileHelper.js.map +1 -1
- package/dist/lib/utils/logger.js.map +1 -1
- package/dist/lib/utils/markdownParser.js +3 -6
- package/dist/lib/utils/markdownParser.js.map +1 -1
- package/dist/lib/utils/sqlHelper.js.map +1 -1
- package/dist/lib/utils/textFileReader.js +2 -2
- package/dist/lib/utils/textFileReader.js.map +1 -1
- package/dist/lib/utils/textHelper.d.ts +18 -0
- package/dist/lib/utils/textHelper.js +62 -0
- package/dist/lib/utils/textHelper.js.map +1 -1
- package/dist/{services → models}/databaseTypes.d.ts +0 -0
- package/dist/{services → models}/databaseTypes.js +0 -0
- package/dist/models/databaseTypes.js.map +1 -0
- package/dist/models/dbColumn.d.ts +43 -0
- package/dist/models/dbColumn.js +3 -0
- package/dist/models/dbColumn.js.map +1 -0
- package/dist/models/dbDiffModel.d.ts +43 -0
- package/dist/models/dbDiffModel.js +3 -0
- package/dist/models/dbDiffModel.js.map +1 -0
- package/dist/models/dbForeignKey.d.ts +33 -0
- package/dist/models/dbForeignKey.js +3 -0
- package/dist/models/dbForeignKey.js.map +1 -0
- package/dist/models/dbIndex.d.ts +28 -0
- package/dist/models/dbIndex.js +3 -0
- package/dist/models/dbIndex.js.map +1 -0
- package/dist/models/dbIndexType.d.ts +8 -0
- package/dist/models/dbIndexType.js +13 -0
- package/dist/models/dbIndexType.js.map +1 -0
- package/dist/models/dbModel.d.ts +10 -0
- package/dist/{services → models}/dbModel.js +0 -0
- package/dist/{services → models}/dbModel.js.map +1 -1
- package/dist/models/dbPrimaryKey.d.ts +16 -0
- package/dist/models/dbPrimaryKey.js +3 -0
- package/dist/models/dbPrimaryKey.js.map +1 -0
- package/dist/models/dbTable.d.ts +49 -0
- package/dist/models/dbTable.js +3 -0
- package/dist/models/dbTable.js.map +1 -0
- package/dist/models/dbTableMarkdown.d.ts +34 -0
- package/dist/models/dbTableMarkdown.js +3 -0
- package/dist/models/dbTableMarkdown.js.map +1 -0
- package/dist/services/dbOptions.d.ts +35 -0
- package/dist/services/dbOptions.js +18 -0
- package/dist/services/dbOptions.js.map +1 -0
- package/dist/services/dbmOptions.d.ts +1 -1
- package/dist/services/dbmOptions.js +1 -1
- package/dist/services/dbmOptions.js.map +1 -1
- package/dist/services/dbmService.d.ts +36 -1
- package/dist/services/dbmService.js +80 -13
- package/dist/services/dbmService.js.map +1 -1
- package/package.json +74 -81
- package/.eslintcache +0 -1
- package/.prettierrc +0 -8
- package/dist/services/databaseTypes.js.map +0 -1
- package/dist/services/dbModel.d.ts +0 -135
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* eslint-disable class-methods-use-this */
|
|
3
|
+
/* eslint-disable prefer-template */
|
|
2
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
5
|
exports.OracleProvider = void 0;
|
|
4
6
|
const sqlHelper_1 = require("../../lib/utils/sqlHelper");
|
|
@@ -91,12 +93,17 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
91
93
|
}
|
|
92
94
|
getSqlCreateTableIfNotExistsSingle(table) {
|
|
93
95
|
const result = this.getSqlCreateTableSingle(table, false);
|
|
94
|
-
const sSQL = ' SELECT COUNT(*) INTO v_table_is_exists'
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
96
|
+
const sSQL = ' SELECT COUNT(*) INTO v_table_is_exists' +
|
|
97
|
+
dbProvider_1.line +
|
|
98
|
+
' FROM user_tables' +
|
|
99
|
+
dbProvider_1.line +
|
|
100
|
+
` WHERE lower(table_name) = lower('${table.name}');` +
|
|
101
|
+
dbProvider_1.line +
|
|
102
|
+
' IF v_table_is_exists != 0 THEN' +
|
|
103
|
+
dbProvider_1.line +
|
|
104
|
+
` execute immediate ${result.sqlCreateTable}` +
|
|
105
|
+
dbProvider_1.line +
|
|
106
|
+
' END IF;';
|
|
100
107
|
result.sqlCreateTable = sSQL;
|
|
101
108
|
return result;
|
|
102
109
|
}
|
|
@@ -105,13 +112,17 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
105
112
|
return sSQL;
|
|
106
113
|
}
|
|
107
114
|
getSqlCreateTableIfNotExistsSinglePre() {
|
|
108
|
-
const sSQL = 'DECLARE'
|
|
109
|
-
+ dbProvider_1.line + ' v_table_is_exists integer;'
|
|
110
|
-
+ dbProvider_1.line + 'BEGIN';
|
|
115
|
+
const sSQL = 'DECLARE' + dbProvider_1.line + ' v_table_is_exists integer;' + dbProvider_1.line + 'BEGIN';
|
|
111
116
|
return sSQL;
|
|
112
117
|
}
|
|
113
118
|
getSqlCreateTableSingle(table, withComment) {
|
|
114
|
-
|
|
119
|
+
const result = {
|
|
120
|
+
sqlCreateFK: '',
|
|
121
|
+
sqlCreateTable: '',
|
|
122
|
+
};
|
|
123
|
+
if (!table.columns) {
|
|
124
|
+
return result;
|
|
125
|
+
}
|
|
115
126
|
// Create Columns sql
|
|
116
127
|
let sqlColumn = '';
|
|
117
128
|
table.columns.forEach((column, index) => {
|
|
@@ -125,44 +136,45 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
125
136
|
if (table.primaryKey) {
|
|
126
137
|
const sqlPkName = this.renderPkName(table);
|
|
127
138
|
const sqlPkColumns = table.primaryKey.columns.replace(',\\s*', ', ');
|
|
128
|
-
sqlPrimaryKey =
|
|
129
|
-
|
|
139
|
+
sqlPrimaryKey =
|
|
140
|
+
dbProvider_1.line +
|
|
141
|
+
`ALTER TABLE ${table.name} ADD CONSTRAINT ${sqlPkName} PRIMARY KEY (${sqlPkColumns});`;
|
|
130
142
|
}
|
|
131
143
|
// unique Indexes SQL
|
|
132
144
|
let sqlUniqueIndex = '';
|
|
133
|
-
|
|
145
|
+
table.indexes?.forEach((index) => {
|
|
134
146
|
if (index.unique) {
|
|
135
147
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
136
148
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
137
|
-
sqlUniqueIndex +=
|
|
138
|
-
+ `ALTER TABLE ${table.name} ADD CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns});`;
|
|
149
|
+
sqlUniqueIndex +=
|
|
150
|
+
dbProvider_1.line + `ALTER TABLE ${table.name} ADD CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns});`;
|
|
139
151
|
}
|
|
140
152
|
});
|
|
141
153
|
// non-unique Indexes SQL
|
|
142
154
|
let sqlNoUniqueIndex = '';
|
|
143
|
-
|
|
155
|
+
table.indexes?.forEach((index) => {
|
|
144
156
|
if (!index.unique) {
|
|
145
157
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
146
158
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
147
|
-
sqlNoUniqueIndex += dbProvider_1.line
|
|
148
|
-
+ `CREATE INDEX ${sqlIndexName} ON ${table.name} (${sqlColumns});`;
|
|
159
|
+
sqlNoUniqueIndex += dbProvider_1.line + `CREATE INDEX ${sqlIndexName} ON ${table.name} (${sqlColumns});`;
|
|
149
160
|
}
|
|
150
161
|
});
|
|
151
162
|
// Generate table sql
|
|
152
|
-
const result = {
|
|
153
|
-
sqlCreateTable: '',
|
|
154
|
-
sqlCreateFK: '',
|
|
155
|
-
};
|
|
156
163
|
// Create table
|
|
157
|
-
result.sqlCreateTable =
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
164
|
+
result.sqlCreateTable =
|
|
165
|
+
''.padEnd(32, '-') +
|
|
166
|
+
dbProvider_1.line +
|
|
167
|
+
`-- Create table: '${table.name}'` +
|
|
168
|
+
dbProvider_1.line +
|
|
169
|
+
''.padEnd(32, '-') +
|
|
170
|
+
dbProvider_1.line +
|
|
171
|
+
`CREATE TABLE ${table.name} (` +
|
|
172
|
+
sqlColumn +
|
|
173
|
+
dbProvider_1.line +
|
|
174
|
+
');' +
|
|
175
|
+
sqlPrimaryKey +
|
|
176
|
+
sqlUniqueIndex +
|
|
177
|
+
sqlNoUniqueIndex;
|
|
166
178
|
// Generate Foreign key SQL
|
|
167
179
|
if (table.foreignKeys.length > 0) {
|
|
168
180
|
result.sqlCreateFK = `-- Create foreign keys for table: '${table.name}'`;
|
|
@@ -171,11 +183,15 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
171
183
|
const sqlColumns = foreignKey.columns.replace(',\\s*', ', ');
|
|
172
184
|
const sqlRefInfo = `${foreignKey.refTable}(${foreignKey.refColumns.replace(',\\s*', ', ')})`;
|
|
173
185
|
const sqlOptions = foreignKey.options.length > 0 ? foreignKey.options : '';
|
|
174
|
-
result.sqlCreateFK
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
186
|
+
result.sqlCreateFK +=
|
|
187
|
+
dbProvider_1.line +
|
|
188
|
+
`ALTER TABLE ${table.name}` +
|
|
189
|
+
dbProvider_1.line +
|
|
190
|
+
` ADD CONSTRAINT ${sqlFkName}` +
|
|
191
|
+
dbProvider_1.line +
|
|
192
|
+
` FOREIGN KEY (${sqlColumns})` +
|
|
193
|
+
dbProvider_1.line +
|
|
194
|
+
` REFERENCES ${sqlRefInfo}${sqlOptions};`;
|
|
179
195
|
});
|
|
180
196
|
}
|
|
181
197
|
// Column comment
|
|
@@ -186,7 +202,8 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
186
202
|
let sqlColumnComment = this.getColumnComment(column);
|
|
187
203
|
if (sqlColumnComment) {
|
|
188
204
|
sqlColumnComment = sqlHelper_1.SqlHelper.toSQL(sqlColumnComment);
|
|
189
|
-
sqlComment +=
|
|
205
|
+
sqlComment +=
|
|
206
|
+
dbProvider_1.line + `COMMENT ON COLUMN ${table.name}.${column.name} IS ${sqlColumnComment};`;
|
|
190
207
|
}
|
|
191
208
|
});
|
|
192
209
|
}
|
|
@@ -196,12 +213,17 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
196
213
|
return result;
|
|
197
214
|
}
|
|
198
215
|
getSqlDropTableSingle(table) {
|
|
199
|
-
const sSQL = ' SELECT COUNT(*) INTO v_table_is_exists'
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
216
|
+
const sSQL = ' SELECT COUNT(*) INTO v_table_is_exists' +
|
|
217
|
+
dbProvider_1.line +
|
|
218
|
+
' FROM user_tables' +
|
|
219
|
+
dbProvider_1.line +
|
|
220
|
+
` WHERE lower(table_name) = lower('${table.name}');` +
|
|
221
|
+
dbProvider_1.line +
|
|
222
|
+
' IF v_table_is_exists != 0 THEN' +
|
|
223
|
+
dbProvider_1.line +
|
|
224
|
+
` execute immediate 'DROP TABLE ${table.name} PURGE';` +
|
|
225
|
+
dbProvider_1.line +
|
|
226
|
+
' END IF;';
|
|
205
227
|
return sSQL;
|
|
206
228
|
}
|
|
207
229
|
getSqlDropTableSinglePost() {
|
|
@@ -209,42 +231,61 @@ class OracleProvider extends dbProvider_1.DbProvider {
|
|
|
209
231
|
return sSQL;
|
|
210
232
|
}
|
|
211
233
|
getSqlDropTableSinglePre() {
|
|
212
|
-
const sSQL = 'DECLARE'
|
|
213
|
-
+ dbProvider_1.line + ' v_table_is_exists integer;'
|
|
214
|
-
+ dbProvider_1.line + 'BEGIN';
|
|
234
|
+
const sSQL = 'DECLARE' + dbProvider_1.line + ' v_table_is_exists integer;' + dbProvider_1.line + 'BEGIN';
|
|
215
235
|
return sSQL;
|
|
216
236
|
}
|
|
217
237
|
getSqlRemoveFKPost() {
|
|
218
|
-
const sSQL = '-- Remove temporary store procedure for remove foreign key'
|
|
219
|
-
|
|
238
|
+
const sSQL = '-- Remove temporary store procedure for remove foreign key' +
|
|
239
|
+
dbProvider_1.line +
|
|
240
|
+
`DROP PROCEDURE ${this.SP_REMVOE_FK_NAME};`;
|
|
220
241
|
return sSQL;
|
|
221
242
|
}
|
|
222
243
|
getSqlRemoveFKPre() {
|
|
223
|
-
const sSQL = '-- temporary store procedure for remove foreign key'
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
244
|
+
const sSQL = '-- temporary store procedure for remove foreign key' +
|
|
245
|
+
dbProvider_1.line +
|
|
246
|
+
`CREATE or REPLACE PROCEDURE ${this.SP_REMVOE_FK_NAME}(` +
|
|
247
|
+
dbProvider_1.line +
|
|
248
|
+
' a_table_name IN VARCHAR2' +
|
|
249
|
+
dbProvider_1.line +
|
|
250
|
+
') IS' +
|
|
251
|
+
dbProvider_1.line +
|
|
252
|
+
' v_fk_name varchar2(250);' +
|
|
253
|
+
dbProvider_1.line +
|
|
254
|
+
' CURSOR c_fk IS' +
|
|
255
|
+
dbProvider_1.line +
|
|
256
|
+
' SELECT UC.constraint_name' +
|
|
257
|
+
dbProvider_1.line +
|
|
258
|
+
' FROM user_constraints UC' +
|
|
259
|
+
dbProvider_1.line +
|
|
260
|
+
' WHERE lower(UC.table_name) = lower(a_table_name)' +
|
|
261
|
+
dbProvider_1.line +
|
|
262
|
+
" AND UC.constraint_type = 'R';" +
|
|
263
|
+
dbProvider_1.line +
|
|
264
|
+
'BEGIN' +
|
|
265
|
+
dbProvider_1.line +
|
|
266
|
+
'' +
|
|
267
|
+
dbProvider_1.line +
|
|
268
|
+
' OPEN c_fk;' +
|
|
269
|
+
dbProvider_1.line +
|
|
270
|
+
' LOOP' +
|
|
271
|
+
dbProvider_1.line +
|
|
272
|
+
' FETCH c_fk INTO v_fk_name;' +
|
|
273
|
+
dbProvider_1.line +
|
|
274
|
+
' EXIT WHEN c_fk%NOTFOUND;' +
|
|
275
|
+
dbProvider_1.line +
|
|
276
|
+
" EXECUTE IMMEDIATE 'ALTER TABLE ' || a_table_name || ' DROP CONSTRAINT ' || v_fk_name;" +
|
|
277
|
+
dbProvider_1.line +
|
|
278
|
+
' END LOOP;' +
|
|
279
|
+
dbProvider_1.line +
|
|
280
|
+
' CLOSE c_fk;' +
|
|
281
|
+
dbProvider_1.line +
|
|
282
|
+
`END ${this.SP_REMVOE_FK_NAME};`;
|
|
243
283
|
return sSQL;
|
|
244
284
|
}
|
|
245
285
|
getSqlRemoveFkSingle(table) {
|
|
246
|
-
const sSQL = `-- Remove ${table.name} foreign key constraint`
|
|
247
|
-
|
|
286
|
+
const sSQL = `-- Remove ${table.name} foreign key constraint` +
|
|
287
|
+
dbProvider_1.line +
|
|
288
|
+
`CALL ${this.SP_REMVOE_FK_NAME}('${table.name}');`;
|
|
248
289
|
return sSQL;
|
|
249
290
|
}
|
|
250
291
|
renderDefaultName(table, column) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracleProvider.js","sourceRoot":"","sources":["../../../src/dialects/oracle/oracleProvider.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"oracleProvider.js","sourceRoot":"","sources":["../../../src/dialects/oracle/oracleProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { DbModel
|
|
1
|
+
import { DbModel } from '../../models/dbModel';
|
|
2
|
+
import { DbTable } from '../../models/dbTable';
|
|
2
3
|
import { DbProvider } from '../core/dbProvider';
|
|
3
4
|
export declare class PostgreSqlProvider extends DbProvider {
|
|
4
5
|
private SQL_Statement_End;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PostgreSqlProvider = void 0;
|
|
4
|
+
/* eslint-disable class-methods-use-this */
|
|
5
|
+
/* eslint-disable prefer-template */
|
|
4
6
|
const sqlHelper_1 = require("../../lib/utils/sqlHelper");
|
|
5
7
|
const dbProvider_1 = require("../core/dbProvider");
|
|
6
8
|
class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
@@ -69,7 +71,13 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
69
71
|
});
|
|
70
72
|
}
|
|
71
73
|
getSqlCreateTableSingle(table, withComment, withIfNotExists) {
|
|
72
|
-
|
|
74
|
+
const result = {
|
|
75
|
+
sqlCreateFK: '',
|
|
76
|
+
sqlCreateTable: '',
|
|
77
|
+
};
|
|
78
|
+
if (!table.columns) {
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
73
81
|
// Create Columns sql
|
|
74
82
|
let sqlColumn = '';
|
|
75
83
|
table.columns.forEach((column, index) => {
|
|
@@ -83,34 +91,28 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
83
91
|
if (table.primaryKey) {
|
|
84
92
|
const sqlPkName = this.renderPkName(table);
|
|
85
93
|
const sqlPkColumns = table.primaryKey.columns.replace(',\\s*', ', ');
|
|
86
|
-
sqlPrimaryKey = dbProvider_1.line
|
|
87
|
-
+ ` ,CONSTRAINT ${sqlPkName} PRIMARY KEY (${sqlPkColumns})`;
|
|
94
|
+
sqlPrimaryKey = dbProvider_1.line + ` ,CONSTRAINT ${sqlPkName} PRIMARY KEY (${sqlPkColumns})`;
|
|
88
95
|
}
|
|
89
96
|
// unique Indexes SQL
|
|
90
97
|
let sqlUniqueIndex = '';
|
|
91
|
-
|
|
98
|
+
table.indexes?.forEach((index) => {
|
|
92
99
|
if (index.unique) {
|
|
93
100
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
94
101
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
95
|
-
sqlUniqueIndex += dbProvider_1.line
|
|
96
|
-
+ ` ,CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns})`;
|
|
102
|
+
sqlUniqueIndex += dbProvider_1.line + ` ,CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns})`;
|
|
97
103
|
}
|
|
98
104
|
});
|
|
99
105
|
// non-unique Indexes SQL
|
|
100
106
|
let sqlNoUniqueIndex = '';
|
|
101
|
-
|
|
107
|
+
table.indexes?.forEach((index) => {
|
|
102
108
|
if (!index.unique) {
|
|
103
109
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
104
110
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
105
|
-
sqlNoUniqueIndex +=
|
|
106
|
-
+ `CREATE INDEX ${sqlIndexName} ON ${table.name} (${sqlColumns})` + this.SQL_Statement_End;
|
|
111
|
+
sqlNoUniqueIndex +=
|
|
112
|
+
dbProvider_1.line + `CREATE INDEX ${sqlIndexName} ON ${table.name} (${sqlColumns})` + this.SQL_Statement_End;
|
|
107
113
|
}
|
|
108
114
|
});
|
|
109
115
|
// Generate table sql
|
|
110
|
-
const result = {
|
|
111
|
-
sqlCreateTable: '',
|
|
112
|
-
sqlCreateFK: '',
|
|
113
|
-
};
|
|
114
116
|
// Generate Foreign key SQL
|
|
115
117
|
if (table.foreignKeys.length > 0) {
|
|
116
118
|
result.sqlCreateFK = `-- Create foreign keys for table: '${table.name}'`;
|
|
@@ -119,10 +121,11 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
119
121
|
const sqlColumns = foreignKey.columns.replace(',\\s*', ', ');
|
|
120
122
|
const sqlRefInfo = `${foreignKey.refTable}(${foreignKey.refColumns.replace(',\\s*', ', ')})`;
|
|
121
123
|
const sqlOptions = foreignKey.options.length > 0 ? foreignKey.options : '';
|
|
122
|
-
result.sqlCreateFK
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
+
|
|
124
|
+
result.sqlCreateFK +=
|
|
125
|
+
dbProvider_1.line +
|
|
126
|
+
`ALTER TABLE ${table.name}` +
|
|
127
|
+
` ADD CONSTRAINT ${sqlFkName} FOREIGN KEY (${sqlColumns}) REFERENCES ${sqlRefInfo}${sqlOptions}` +
|
|
128
|
+
this.SQL_Statement_End;
|
|
126
129
|
});
|
|
127
130
|
}
|
|
128
131
|
// table comment
|
|
@@ -130,8 +133,7 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
130
133
|
// Column comment
|
|
131
134
|
if (withComment) {
|
|
132
135
|
if (withComment && table.comment) {
|
|
133
|
-
sqlComment = dbProvider_1.line
|
|
134
|
-
+ `COMMENT ON TABLE ${table.name} IS ${sqlHelper_1.SqlHelper.toSQL(table.comment)};`;
|
|
136
|
+
sqlComment = dbProvider_1.line + `COMMENT ON TABLE ${table.name} IS ${sqlHelper_1.SqlHelper.toSQL(table.comment)};`;
|
|
135
137
|
}
|
|
136
138
|
table.columns.forEach((column) => {
|
|
137
139
|
let sqlColumnComment = this.getColumnComment(column);
|
|
@@ -142,14 +144,18 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
142
144
|
});
|
|
143
145
|
}
|
|
144
146
|
const sqlIfNotExist = withIfNotExists ? 'IF NOT EXISTS ' : '';
|
|
145
|
-
result.sqlCreateTable =
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
147
|
+
result.sqlCreateTable =
|
|
148
|
+
`-- Create table: '${table.name}'` +
|
|
149
|
+
dbProvider_1.line +
|
|
150
|
+
`CREATE TABLE ${sqlIfNotExist}${table.name} (` +
|
|
151
|
+
sqlColumn +
|
|
152
|
+
sqlPrimaryKey +
|
|
153
|
+
sqlUniqueIndex +
|
|
154
|
+
dbProvider_1.line +
|
|
155
|
+
')' +
|
|
156
|
+
this.SQL_Statement_End +
|
|
157
|
+
sqlNoUniqueIndex +
|
|
158
|
+
sqlComment;
|
|
153
159
|
return result;
|
|
154
160
|
}
|
|
155
161
|
GetSQLDropTableInternal(model) {
|
|
@@ -160,10 +166,7 @@ class PostgreSqlProvider extends dbProvider_1.DbProvider {
|
|
|
160
166
|
});
|
|
161
167
|
}
|
|
162
168
|
getSqlDropTableSingle(table) {
|
|
163
|
-
const sSQL = 'DROP TABLE IF EXISTS '
|
|
164
|
-
+ table.name
|
|
165
|
-
+ ' CASCADE'
|
|
166
|
-
+ this.SQL_Statement_End;
|
|
169
|
+
const sSQL = 'DROP TABLE IF EXISTS ' + table.name + ' CASCADE' + this.SQL_Statement_End;
|
|
167
170
|
return sSQL;
|
|
168
171
|
}
|
|
169
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgreSqlProvider.js","sourceRoot":"","sources":["../../../src/dialects/postgresql/postgreSqlProvider.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"postgreSqlProvider.js","sourceRoot":"","sources":["../../../src/dialects/postgresql/postgreSqlProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { DbModel
|
|
1
|
+
import { DbModel } from '../../models/dbModel';
|
|
2
|
+
import { DbTable } from '../../models/dbTable';
|
|
2
3
|
import { DbProvider } from '../core/dbProvider';
|
|
3
4
|
export declare class SqliteProvider extends DbProvider {
|
|
4
5
|
private SQL_Statement_End;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* eslint-disable class-methods-use-this */
|
|
3
|
+
/* eslint-disable prefer-template */
|
|
2
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
5
|
exports.SqliteProvider = void 0;
|
|
4
6
|
const dbProvider_1 = require("../core/dbProvider");
|
|
@@ -59,7 +61,14 @@ class SqliteProvider extends dbProvider_1.DbProvider {
|
|
|
59
61
|
return this.getSqlCreateTableSingle(table, false, true);
|
|
60
62
|
}
|
|
61
63
|
getSqlCreateTableSingle(table, withComment, IfNotExists) {
|
|
62
|
-
|
|
64
|
+
const result = {
|
|
65
|
+
sqlComment: '',
|
|
66
|
+
sqlCreateFK: '',
|
|
67
|
+
sqlCreateTable: '',
|
|
68
|
+
};
|
|
69
|
+
if (!table.columns) {
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
63
72
|
// Create Columns sql
|
|
64
73
|
let sqlColumn = '';
|
|
65
74
|
table.columns.forEach((column, index) => {
|
|
@@ -75,63 +84,64 @@ class SqliteProvider extends dbProvider_1.DbProvider {
|
|
|
75
84
|
if (table.primaryKey) {
|
|
76
85
|
const sqlPkName = this.renderPkName(table);
|
|
77
86
|
const sqlPkColumns = table.primaryKey.columns.replace(',\\s*', ', ');
|
|
78
|
-
sqlPrimaryKey = dbProvider_1.line
|
|
79
|
-
+ ` ,CONSTRAINT ${sqlPkName} PRIMARY KEY (${sqlPkColumns})`;
|
|
87
|
+
sqlPrimaryKey = dbProvider_1.line + ` ,CONSTRAINT ${sqlPkName} PRIMARY KEY (${sqlPkColumns})`;
|
|
80
88
|
}
|
|
81
89
|
// unique Indexes SQL
|
|
82
90
|
let sqlUniqueIndex = '';
|
|
83
|
-
|
|
91
|
+
table.indexes?.forEach((index) => {
|
|
84
92
|
if (index.unique) {
|
|
85
93
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
86
94
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
87
|
-
sqlUniqueIndex += dbProvider_1.line
|
|
88
|
-
+ ` ,CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns})`;
|
|
95
|
+
sqlUniqueIndex += dbProvider_1.line + ` ,CONSTRAINT ${sqlIndexName} UNIQUE (${sqlColumns})`;
|
|
89
96
|
}
|
|
90
97
|
});
|
|
91
98
|
// non-unique Indexes SQL
|
|
92
99
|
let sqlNoUniqueIndex = '';
|
|
93
|
-
|
|
100
|
+
table.indexes?.forEach((index) => {
|
|
94
101
|
if (!index.unique) {
|
|
95
|
-
const
|
|
102
|
+
const sqlIndexIfNotExist = IfNotExists ? 'IF NOT EXISTS ' : '';
|
|
96
103
|
const sqlIndexName = this.renderIndexName(table, index);
|
|
97
104
|
const sqlColumns = index.columns.replace(',\\s*', ', ');
|
|
98
|
-
sqlNoUniqueIndex +=
|
|
99
|
-
|
|
100
|
-
|
|
105
|
+
sqlNoUniqueIndex +=
|
|
106
|
+
dbProvider_1.line +
|
|
107
|
+
`CREATE INDEX ${sqlIndexIfNotExist}${sqlIndexName} ON "${table.name}" (${sqlColumns})` +
|
|
108
|
+
this.SQL_Statement_End;
|
|
101
109
|
}
|
|
102
110
|
});
|
|
103
111
|
// Generate Foreign key SQL
|
|
104
|
-
const result = {
|
|
105
|
-
sqlCreateTable: '',
|
|
106
|
-
sqlCreateFK: '',
|
|
107
|
-
sqlComment: '',
|
|
108
|
-
};
|
|
109
112
|
// SQLite does not support Add FK in Alter Table statement.
|
|
110
113
|
let sqlForeignKey = '';
|
|
111
114
|
if (table.foreignKeys.length > 0) {
|
|
112
|
-
|
|
115
|
+
table.foreignKeys?.forEach((foreignKey) => {
|
|
113
116
|
const sqlFkName = this.renderFkName(table, foreignKey);
|
|
114
117
|
const sqlColumns = foreignKey.columns.replace(',\\s*', ', ');
|
|
115
118
|
const sqlRefInfo = `${foreignKey.refTable}(${foreignKey.refColumns.replace(',\\s*', ', ')})`;
|
|
116
119
|
const sqlOptions = foreignKey.options.length > 0 ? foreignKey.options : '';
|
|
117
|
-
sqlForeignKey +=
|
|
120
|
+
sqlForeignKey +=
|
|
121
|
+
dbProvider_1.line +
|
|
122
|
+
` ,CONSTRAINT ${sqlFkName} FOREIGN KEY (${sqlColumns}) REFERENCES ${sqlRefInfo}${sqlOptions}`;
|
|
118
123
|
});
|
|
119
124
|
}
|
|
120
125
|
// Generate table sql
|
|
121
126
|
const sqlIfNotExist = IfNotExists ? 'IF NOT EXISTS ' : '';
|
|
122
|
-
result.sqlCreateTable =
|
|
123
|
-
+
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
127
|
+
result.sqlCreateTable =
|
|
128
|
+
`CREATE TABLE ${sqlIfNotExist}"${table.name}" (` +
|
|
129
|
+
sqlColumn +
|
|
130
|
+
sqlPrimaryKey +
|
|
131
|
+
sqlUniqueIndex +
|
|
132
|
+
sqlForeignKey +
|
|
133
|
+
dbProvider_1.line +
|
|
134
|
+
')' +
|
|
135
|
+
this.SQL_Statement_End +
|
|
136
|
+
sqlNoUniqueIndex;
|
|
129
137
|
return result;
|
|
130
138
|
}
|
|
131
139
|
getSqlDropTableSingle(table) {
|
|
132
|
-
const sSQL = 'DROP TABLE IF EXISTS '
|
|
133
|
-
|
|
134
|
-
+
|
|
140
|
+
const sSQL = 'DROP TABLE IF EXISTS ' +
|
|
141
|
+
this.IdentifierStart +
|
|
142
|
+
table.name +
|
|
143
|
+
this.IdentifierEnd +
|
|
144
|
+
this.SQL_Statement_End;
|
|
135
145
|
return sSQL;
|
|
136
146
|
}
|
|
137
147
|
}
|