不要怂,就是干,撸起袖子干!

Commit 9f58b823 by Tiago Bonatti Committed by Sushant

fix(tinyint): ignore params for TINYINT on postgres (#9992)

1 parent 9508888e
......@@ -254,6 +254,27 @@ module.exports = BaseTypes => {
array_oids: [1185]
};
function TINYINT(length) {
if (!(this instanceof TINYINT)) return new TINYINT(length);
BaseTypes.TINYINT.apply(this, arguments);
// POSTGRES does not support any parameters for tinyint
if (this._length || this.options.length || this._unsigned || this._zerofill) {
warn('PostgreSQL does not support TINYINT with options. Plain `TINYINT` will be used instead.');
this._length = undefined;
this.options.length = undefined;
this._unsigned = undefined;
this._zerofill = undefined;
}
}
inherits(TINYINT, BaseTypes.TINYINT);
// int2
BaseTypes.TINYINT.types.postgres = {
oids: [21],
array_oids: [1005]
};
function SMALLINT(length) {
if (!(this instanceof SMALLINT)) return new SMALLINT(length);
BaseTypes.SMALLINT.apply(this, arguments);
......@@ -668,6 +689,7 @@ module.exports = BaseTypes => {
STRING,
CHAR,
TEXT,
TINYINT,
SMALLINT,
INTEGER,
BIGINT,
......
......@@ -420,7 +420,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT(2),
expect: {
default: 'TINYINT(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -428,7 +429,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT({ length: 2 }),
expect: {
default: 'TINYINT(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -436,7 +438,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT.UNSIGNED,
expect: {
default: 'TINYINT UNSIGNED',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -445,7 +448,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
expect: {
default: 'TINYINT(2) UNSIGNED',
sqlite: 'TINYINT UNSIGNED(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -453,7 +457,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT.UNSIGNED.ZEROFILL,
expect: {
default: 'TINYINT UNSIGNED ZEROFILL',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -462,7 +467,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
expect: {
default: 'TINYINT(2) UNSIGNED ZEROFILL',
sqlite: 'TINYINT UNSIGNED ZEROFILL(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -470,7 +476,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT.ZEROFILL,
expect: {
default: 'TINYINT ZEROFILL',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -479,7 +486,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
expect: {
default: 'TINYINT(2) ZEROFILL',
sqlite: 'TINYINT ZEROFILL(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -487,7 +495,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
dataType: DataTypes.TINYINT.ZEROFILL.UNSIGNED,
expect: {
default: 'TINYINT UNSIGNED ZEROFILL',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
},
{
......@@ -496,7 +505,8 @@ suite(Support.getTestDialectTeaser('SQL'), () => {
expect: {
default: 'TINYINT(2) UNSIGNED ZEROFILL',
sqlite: 'TINYINT UNSIGNED ZEROFILL(2)',
mssql: 'TINYINT'
mssql: 'TINYINT',
postgres: 'TINYINT'
}
}
];
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!