Socket
Socket
Sign inDemoInstall

knex-schema-inspector

Package Overview
Dependencies
Maintainers
1
Versions
70
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

knex-schema-inspector - npm Package Compare versions

Comparing version 1.5.3 to 1.5.4

4

dist/dialects/mssql.d.ts

@@ -16,4 +16,4 @@ import { Knex } from 'knex';

default_value: string | null;
is_unique: 'YES' | 'NO';
is_primary_key: 'YES' | 'NO';
is_unique: true | null;
is_primary_key: true | null;
has_auto_increment: 'YES' | 'NO';

@@ -20,0 +20,0 @@ foreign_key_table: string | null;

@@ -53,3 +53,3 @@ "use strict";

return __assign(__assign({}, rawColumn), { default_value: parseDefaultValue(rawColumn.default_value) ||
parseDefaultValue(rawColumn.generation_expression), is_generated: !!rawColumn.is_generated, is_unique: rawColumn.is_unique === 'YES', is_primary_key: rawColumn.is_primary_key === 'YES', is_nullable: rawColumn.is_nullable === 'YES', has_auto_increment: rawColumn.has_auto_increment === 'YES', numeric_precision: rawColumn.numeric_precision || null, numeric_scale: rawColumn.numeric_precision || null });
parseDefaultValue(rawColumn.generation_expression), is_generated: !!rawColumn.is_generated, is_unique: rawColumn.is_unique === true, is_primary_key: rawColumn.is_primary_key === true, is_nullable: rawColumn.is_nullable === 'YES', has_auto_increment: rawColumn.has_auto_increment === 'YES', numeric_precision: rawColumn.numeric_precision || null, numeric_scale: rawColumn.numeric_scale || null });
}

@@ -222,3 +222,3 @@ exports.rawColumnToColumn = rawColumnToColumn;

query = this.knex
.select(this.knex.raw("\n [o].[name] AS [table],\n [c].[name] AS [name],\n [t].[name] AS [data_type],\n [c].[max_length] AS [max_length],\n [c].[precision] AS [numeric_precision],\n [c].[scale] AS [numeric_scale],\n CASE WHEN [c].[is_nullable] = 0 THEN\n 'NO'\n ELSE\n 'YES'\n END AS [is_nullable],\n COALESCE(\n object_definition ([c].[default_object_id]),\n [cc].[definition]\n ) AS [default_value],\n CASE [i].[is_unique]\n WHEN 1 THEN\n 'YES'\n ELSE\n 'NO'\n END AS [is_unique],\n CASE [i].[is_primary_key]\n WHEN 1 THEN\n 'YES'\n ELSE\n 'NO'\n END AS [is_primary_key],\n CASE [c].[is_identity]\n WHEN 1 THEN\n 'YES'\n ELSE\n 'NO'\n END AS [has_auto_increment],\n OBJECT_NAME ([fk].[referenced_object_id]) AS [foreign_key_table],\n COL_NAME ([fk].[referenced_object_id],\n [fk].[referenced_column_id]) AS [foreign_key_column],\n [cc].[is_computed] as [is_generated]"))
.select(this.knex.raw("\n [o].[name] AS [table],\n [c].[name] AS [name],\n [t].[name] AS [data_type],\n [c].[max_length] AS [max_length],\n [c].[precision] AS [numeric_precision],\n [c].[scale] AS [numeric_scale],\n CASE WHEN [c].[is_nullable] = 0 THEN\n 'NO'\n ELSE\n 'YES'\n END AS [is_nullable],\n COALESCE(\n object_definition ([c].[default_object_id]),\n [cc].[definition]\n ) AS [default_value],\n [i].[is_primary_key],\n [i].[is_unique],\n CASE [c].[is_identity]\n WHEN 1 THEN\n 'YES'\n ELSE\n 'NO'\n END AS [has_auto_increment],\n OBJECT_NAME ([fk].[referenced_object_id]) AS [foreign_key_table],\n COL_NAME ([fk].[referenced_object_id],\n [fk].[referenced_column_id]) AS [foreign_key_column],\n [cc].[is_computed] as [is_generated]"))
.from(this.knex.raw("??.[sys].[columns] [c]", [dbName]))

@@ -229,6 +229,6 @@ .joinRaw("JOIN [sys].[types] [t] ON [c].[user_type_id] = [t].[user_type_id]")

.joinRaw("LEFT JOIN [sys].[computed_columns] AS [cc] ON [cc].[object_id] = [c].[object_id] AND [cc].[column_id] = [c].[column_id]")
.joinRaw("LEFT JOIN [sys].[index_columns] [ic] ON [ic].[object_id] = [c].[object_id] AND [ic].[column_id] = [c].[column_id]")
.joinRaw("LEFT JOIN [sys].[indexes] AS [i] ON [i].[object_id] = [c].[object_id] AND [i].[index_id] = [ic].[index_id]")
.joinRaw("LEFT JOIN [sys].[foreign_key_columns] AS [fk] ON [fk].[parent_object_id] = [c].[object_id] AND [fk].[parent_column_id] = [c].[column_id]")
.where({ 's.name': this.schema });
.joinRaw("LEFT JOIN (\n SELECT\n [ic].[object_id],\n [ic].[column_id],\n [ix].[is_unique],\n [ix].[is_primary_key],\n ROW_NUMBER() OVER (\n PARTITION BY [ic].[object_id],\n [ic].[column_id] ORDER BY [ix].[is_primary_key] DESC,\n [ix].[is_unique] DESC\n ) AS index_priority\n FROM\n [sys].[index_columns] [ic]\n JOIN [sys].[indexes] AS [ix] ON [ix].[object_id] = [ic].[object_id]\n AND [ix].[index_id] = [ic].[index_id]\n ) AS [i] ON [i].[object_id] = [c].[object_id] AND [i].[column_id] = [c].[column_id]")
.where({ 's.name': this.schema })
.andWhereRaw("ISNULL([i].index_priority, 1) = 1");
if (table) {

@@ -247,2 +247,3 @@ query.andWhere({ 'o.name': table });

records = _a.sent();
console.log(records);
return [2 /*return*/, records.map(rawColumnToColumn)];

@@ -249,0 +250,0 @@ }

@@ -69,4 +69,2 @@ "use strict";

comment: rawColumn.COLUMN_COMMENT,
// onDelete: rawColumn.DELETE_RULE,
// onUpdate: rawColumn.UPDATE_RULE,
};

@@ -73,0 +71,0 @@ }

@@ -23,4 +23,4 @@ import { Knex } from 'knex';

default_value: string | null;
is_unique: 'YES' | 'NO';
is_primary_key: 'YES' | 'NO';
is_unique: true | null;
is_primary_key: true | null;
has_auto_increment: 'YES' | 'NO';

@@ -39,8 +39,8 @@ foreign_key_table: string | null;

is_generated: !!rawColumn.is_generated,
is_unique: rawColumn.is_unique === 'YES',
is_primary_key: rawColumn.is_primary_key === 'YES',
is_unique: rawColumn.is_unique === true,
is_primary_key: rawColumn.is_primary_key === true,
is_nullable: rawColumn.is_nullable === 'YES',
has_auto_increment: rawColumn.has_auto_increment === 'YES',
numeric_precision: rawColumn.numeric_precision || null,
numeric_scale: rawColumn.numeric_precision || null,
numeric_scale: rawColumn.numeric_scale || null,
};

@@ -217,14 +217,4 @@ }

) AS [default_value],
CASE [i].[is_unique]
WHEN 1 THEN
'YES'
ELSE
'NO'
END AS [is_unique],
CASE [i].[is_primary_key]
WHEN 1 THEN
'YES'
ELSE
'NO'
END AS [is_primary_key],
[i].[is_primary_key],
[i].[is_unique],
CASE [c].[is_identity]

@@ -251,11 +241,24 @@ WHEN 1 THEN

.joinRaw(
`LEFT JOIN [sys].[index_columns] [ic] ON [ic].[object_id] = [c].[object_id] AND [ic].[column_id] = [c].[column_id]`
`LEFT JOIN [sys].[foreign_key_columns] AS [fk] ON [fk].[parent_object_id] = [c].[object_id] AND [fk].[parent_column_id] = [c].[column_id]`
)
.joinRaw(
`LEFT JOIN [sys].[indexes] AS [i] ON [i].[object_id] = [c].[object_id] AND [i].[index_id] = [ic].[index_id]`
`LEFT JOIN (
SELECT
[ic].[object_id],
[ic].[column_id],
[ix].[is_unique],
[ix].[is_primary_key],
ROW_NUMBER() OVER (
PARTITION BY [ic].[object_id],
[ic].[column_id] ORDER BY [ix].[is_primary_key] DESC,
[ix].[is_unique] DESC
) AS index_priority
FROM
[sys].[index_columns] [ic]
JOIN [sys].[indexes] AS [ix] ON [ix].[object_id] = [ic].[object_id]
AND [ix].[index_id] = [ic].[index_id]
) AS [i] ON [i].[object_id] = [c].[object_id] AND [i].[column_id] = [c].[column_id]`
)
.joinRaw(
`LEFT JOIN [sys].[foreign_key_columns] AS [fk] ON [fk].[parent_object_id] = [c].[object_id] AND [fk].[parent_column_id] = [c].[column_id]`
)
.where({ 's.name': this.schema });
.where({ 's.name': this.schema })
.andWhereRaw(`ISNULL([i].index_priority, 1) = 1`);

@@ -276,2 +279,4 @@ if (table) {

console.log(records);
return records.map(rawColumnToColumn);

@@ -278,0 +283,0 @@ }

@@ -56,4 +56,2 @@ import { Knex } from 'knex';

comment: rawColumn.COLUMN_COMMENT,
// onDelete: rawColumn.DELETE_RULE,
// onUpdate: rawColumn.UPDATE_RULE,
};

@@ -60,0 +58,0 @@ }

{
"name": "knex-schema-inspector",
"version": "1.5.3",
"version": "1.5.4",
"description": "Utility for extracting information about existing DB schema",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

@@ -119,3 +119,3 @@ import knex, { Knex } from 'knex';

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -184,3 +184,3 @@ is_nullable: false,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -201,3 +201,3 @@ is_nullable: true,

numeric_precision: 19,
numeric_scale: 19,
numeric_scale: null,
is_generated: false,

@@ -218,3 +218,3 @@ is_nullable: true,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -235,3 +235,3 @@ is_nullable: true,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -252,3 +252,3 @@ is_nullable: false,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -333,3 +333,3 @@ is_nullable: false,

numeric_precision: 19,
numeric_scale: 19,
numeric_scale: null,
is_generated: false,

@@ -354,3 +354,3 @@ is_nullable: true,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -419,3 +419,3 @@ is_nullable: false,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -436,3 +436,3 @@ is_nullable: true,

numeric_precision: 19,
numeric_scale: 19,
numeric_scale: null,
is_generated: false,

@@ -453,3 +453,3 @@ is_nullable: true,

numeric_precision: 10,
numeric_scale: 10,
numeric_scale: null,
is_generated: false,

@@ -456,0 +456,0 @@ is_nullable: true,

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc