Skip to content

Commit b2b79c9

Browse files
authored
remove curly brackets from db name while parsing a connection string (#166)
1 parent 985da61 commit b2b79c9

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

reverse_engineering/helpers/parseConnectionString.js

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,21 @@ const { URL } = require('url');
44
const mssqlPrefix = 'mssql://';
55
const sqlserverPrefix = 'jdbc:sqlserver://';
66

7+
// Remove curly brackets from database name
8+
const removeBrackets = dbName => {
9+
if (!dbName) {
10+
return dbName;
11+
}
12+
return dbName.replace(/(^\{|\}$)/g, '');
13+
};
14+
715
// example: mssql://username:password@host:1433/DatabaseName
816
const parseMssqlUrl = ({ url = '' }) => {
917
const parsed = new URL(url);
1018
return {
1119
host: parsed.hostname,
1220
port: parsed.port ? Number(parsed.port) : null,
13-
databaseName: parsed.pathname.slice(1),
21+
databaseName: removeBrackets(parsed.pathname.slice(1)),
1422
userName: parsed.username,
1523
userPassword: parsed.password,
1624
};
@@ -33,7 +41,7 @@ const parseSqlServerUrl = ({ url = '' }) => {
3341
return {
3442
host,
3543
port: port ? Number(port) : null,
36-
databaseName: params.databaseName || params.database,
44+
databaseName: removeBrackets(params.databaseName || params.database),
3745
userName: params.user,
3846
userPassword: params.password,
3947
};
@@ -50,7 +58,7 @@ const parseBasicString = ({ string = '' }) => {
5058
return {
5159
host: host,
5260
port: host.includes('\\') ? null : parsed.port,
53-
databaseName: parsed.database,
61+
databaseName: removeBrackets(parsed.database),
5462
userName: parsed.user,
5563
userPassword: parsed.password,
5664
};

0 commit comments

Comments
 (0)