I can’t use anything else but UTC when reading a Date datatype.
Here’s my object to be added to PostgreSQL db:
<code>{
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T15:00:00+03:00"
}
</code>
<code>{
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T15:00:00+03:00"
}
</code>
{
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T15:00:00+03:00"
}
When I try to read this data here’s what I receive:
<code>{
"id": 8,
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T12:00:00.000Z",
"updatedAt": "2024-07-08T15:20:17.906Z",
"createdAt": "2024-07-08T15:20:17.906Z"
}
</code>
<code>{
"id": 8,
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T12:00:00.000Z",
"updatedAt": "2024-07-08T15:20:17.906Z",
"createdAt": "2024-07-08T15:20:17.906Z"
}
</code>
{
"id": 8,
"word": "test",
"wordLanguage": "eng",
"testDate": "2024-07-08T12:00:00.000Z",
"updatedAt": "2024-07-08T15:20:17.906Z",
"createdAt": "2024-07-08T15:20:17.906Z"
}
What I want to receive is it should be in GMT+3. So “testDate” should be 15:00 not 12:00.
My model:
<code>sequelize.define('Word', {
word: {
type: DataTypes.STRING,
allowNull: false,
},
wordLanguage: {
type: DataTypes.ENUM,
allowNull: false,
values: ['eng', 'tr'],
},
testDate: {
type: DataTypes.DATE,
allowNull: false,
},
})
</code>
<code>sequelize.define('Word', {
word: {
type: DataTypes.STRING,
allowNull: false,
},
wordLanguage: {
type: DataTypes.ENUM,
allowNull: false,
values: ['eng', 'tr'],
},
testDate: {
type: DataTypes.DATE,
allowNull: false,
},
})
</code>
sequelize.define('Word', {
word: {
type: DataTypes.STRING,
allowNull: false,
},
wordLanguage: {
type: DataTypes.ENUM,
allowNull: false,
values: ['eng', 'tr'],
},
testDate: {
type: DataTypes.DATE,
allowNull: false,
},
})
My Sequelize connection constructor:
<code>const sequelize = new Sequelize('db123', 'user123', 'password123', {
host: 'db',
port: 5432,
dialect: 'postgres',
timezone: 'Europe/Istanbul',
dialectOptions: {
useUTC: false,
},
logging: true,
});
</code>
<code>const sequelize = new Sequelize('db123', 'user123', 'password123', {
host: 'db',
port: 5432,
dialect: 'postgres',
timezone: 'Europe/Istanbul',
dialectOptions: {
useUTC: false,
},
logging: true,
});
</code>
const sequelize = new Sequelize('db123', 'user123', 'password123', {
host: 'db',
port: 5432,
dialect: 'postgres',
timezone: 'Europe/Istanbul',
dialectOptions: {
useUTC: false,
},
logging: true,
});
Also when I run show timezone
in dbeaver the result is:
System date:
<code># date
Mon Jul 8 06:25:18 PM +03 2024
</code>
<code># date
Mon Jul 8 06:25:18 PM +03 2024
</code>
# date
Mon Jul 8 06:25:18 PM +03 2024
So everything is configured to GMT+3 why I still receive results as UTC and how to fix it?