防止 Sequelize 将列名用引号括起来

Posted

技术标签:

【中文标题】防止 Sequelize 将列名用引号括起来【英文标题】:Ptevent Sequelize wrapping column names in quotes 【发布时间】:2019-06-13 05:58:11 【问题描述】:

我正在使用带有 Postgres 的 Sequelize。我在 pascal-case 中有 db 表和列名。在 javascript 中,我的一切都是驼峰式的。由于 Postgres 不区分大小写,所以这不是问题。但是,Sequelize 在查询中为名称添加引号,这使得 Postgres 区分大小写。有没有办法告诉 Sequelize 不要用引号括起来?

Sequelize 产生:从“SalesItem”中选择“SalesItem”。“Id”而不是从salesitem 中选择salesitem.id

【问题讨论】:

How to remove double quotes from Sequelize query?的可能重复 【参考方案1】:

在sequelize doc 中查看options.quoteIdentifiers 似乎这可能会解决您的问题。我没有使用过这个选项(使用 mysql

options.quoteIdentifiers - 设置为 false 以使表名和属性不区分大小写 Postgres 并跳过它们的双引号。警告:将此设置为 false 可能会暴露漏洞,不推荐!

【讨论】:

以上是关于防止 Sequelize 将列名用引号括起来的主要内容,如果未能解决你的问题,请参考以下文章

将短语用引号括起来 Notepad++

sql数据库insert into values的数据格式是怎么规定的?

复制用双引号括起来的 Redshift Pipe Delimited

当我用单引号将字符串括起来时,C++ std::cout 打印奇怪的字符[重复]

QSettings:是不是可以始终保存用双引号括起来的字符串?

Python-注释和字符串