1
Redshiftでsequelizeを使用してクエリを作成しています。モデルの大文字と小文字を区別しないでください
ただし、Redshiftはテーブルの列名では大文字と小文字を区別しないため、すべてのテーブル名は小文字になります。 モデルの後継は大文字と小文字を区別しません。だから私は、クエリfindByIdを行うとき、それはこのクエリを実行します。
SELECT "id", "userId", "summonerId", "name", "profileIconId", "summonerLevel", "revisionDate", "createdAt", "updatedAt" FROM "Lol" AS "Lol" WHERE "Lol"."id" = '463d118c-2139-4679-8cdb-d07249bd7777222';
私は赤方偏移の内側のクエリを実行した場合それは動作しますが、だけで名前の小文字を持っているので、sequelizeだけで、idとnameカラム名を私を持ち帰りますモデル。
どのようにして大文字と小文字を区別することができますか?私はfield
オプションを試しましたが、うまく動作しません。
だから私のモデルは次のとおりです。
lol = sequelize.define('Lol', {
id: {
type: Sequelize.STRING,
allowNull: false,
unique: true,
primaryKey: true,
field: 'id'
},
userId: {
type: Sequelize.STRING,
allowNull: false,
field: 'userid'
},
summonerId: {
type: Sequelize.INTEGER,
allowNull: false,
field: 'summonerid'
},
name: {
type: Sequelize.STRING,
allowNull: false,
field: 'name'
},
profileIconId: {
type: Sequelize.INTEGER,
allowNull: false,
field: 'profileiconid'
},
summonerLevel: {
type: Sequelize.INTEGER,
allowNull: false,
field: 'summonerlevel'
},
revisionDate: {
type: Sequelize.BIGINT,
allowNull: false,
field: 'revisiondate'
},
createdAt: {
type: Sequelize.DATE,
allowNull: false,
field: 'createdat'
},
updatedAt: {
type: Sequelize.DATE,
allowNull: false,
field: 'updatedat'
}
}, {
freezeTableName: true,
tableName: 'Lol'
})