Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用SEQUELIZE Nodejs从表名中删除双引号_Node.js_Postgresql_Sequelize.js - Fatal编程技术网

Node.js 使用SEQUELIZE Nodejs从表名中删除双引号

Node.js 使用SEQUELIZE Nodejs从表名中删除双引号,node.js,postgresql,sequelize.js,Node.js,Postgresql,Sequelize.js,我已经在PostgreSQL数据库中使用SEQUELIZE在Nodejs中创建了一个Account表。我使用了npx命令来创建表 $ npx sequelize db:create $ npx sequelize db:migrate 默认情况下,该表是用双引号创建的。例如,如果要检查Account表中的条目,sql命令如下所示: SELECT * FROM "Account"; 我想从表名中删除双引号,即 SELECT * FROM Account; 在中,我发现了一

我已经在PostgreSQL数据库中使用SEQUELIZE在Nodejs中创建了一个Account表。我使用了npx命令来创建表

$ npx sequelize db:create
$ npx sequelize db:migrate
默认情况下,该表是用双引号创建的。例如,如果要检查Account表中的条目,sql命令如下所示:

SELECT * FROM "Account";
我想从表名中删除双引号,即

SELECT * FROM Account;
在中,我发现了一个选项(options.quoteIdentifiers),它声明“设置为false使表名和属性在Postgres上不区分大小写,并跳过它们的双引号。”

当我在代码中应用此选项时,Account表仍然是用双引号创建的。我不确定我是否犯了错误。请检查我下面的代码。提前谢谢

var sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD,
  options.quoteIdentifiers = false, 
  {
  host: dbConfig.HOST,
  dialect: dbConfig.dialect,
  pool: {
    max: dbConfig.pool.max,
    min: dbConfig.pool.min,
    acquire: dbConfig.pool.acquire,
    idle: dbConfig.pool.idle
  }
},
);
module.exports = (sequelize, DataTypes) => {
  const Account = sequelize.define('Account', {
    epprojectname: DataTypes.STRING,
    username: DataTypes.STRING,
    projectid: DataTypes.STRING,
    vendorparameters: DataTypes.STRING,
    credentials: DataTypes.STRING,
    author: DataTypes.STRING,
    localnumber: DataTypes.STRING,
    loginid: DataTypes.INTEGER,
  }, {
    freezeTableName: true,
  },
  );
您使用了“=”而不是“:”。您可以将等号替换为冒号,然后重试

const sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD, {
  host: dbConfig.HOST,
  dialect: dbConfig.dialect,
  operatorsAliases: false,
  quoteIdentifiers: false,
  freezeTableName: true,
  pool: {
    max: dbConfig.pool.max,
    min: dbConfig.pool.min,
    acquire: dbConfig.pool.acquire,
    idle: dbConfig.pool.idle
  }
});
您使用了“=”而不是“:”。您可以将等号替换为冒号,然后重试

const sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD, {
  host: dbConfig.HOST,
  dialect: dbConfig.dialect,
  operatorsAliases: false,
  quoteIdentifiers: false,
  freezeTableName: true,
  pool: {
    max: dbConfig.pool.max,
    min: dbConfig.pool.min,
    acquire: dbConfig.pool.acquire,
    idle: dbConfig.pool.idle
  }
});

[options.quoteIdentifiers=true]
用于case-insensative,意思是
“Account”
“Account”
是一样的,它不会解决您的问题。请在创建表时共享您的数据库架构。
[options.quoteIdentifiers=true]
用于case-insensative,意思是
“Account”
&
“帐户”
是相同的,它不会解决您的问题。请在创建表的位置与