Saltar al contenido

¿Cómo funciona autoIncrement en Sequelize de NodeJs?

Solución:

Normalmente, Sequelize.js se adapta a la base de datos. Entonces, el atributo de autoincremento corresponde a un tipo de serie en PostgreSQL.

Ya trabajé con Sequelize y lo que recuerdo es que no es necesario especificar una identificación como clave principal. Sequelize lo hará por ti.

Intente no agregar un atributo de identificación y vea si Sequelize no lo agregará por usted o no.

omitNull La opción config por defecto es falsa. Configúrelo en verdadero, y el id será atendido por Postgres:

sequelize = new Sequelize('mydb', 'postgres', null, {
  host: 'localhost',
  port: 5432,
  dialect: 'postgres',
  omitNull: true
})

Visitor = sequelize.define('visitor', {
  email: Sequelize.STRING
})

Visitor.create({email: '[email protected]'})

Me funcionó si agregué manualmente el campo “id” (en este caso, Sequelize no lo agregará automáticamente) en el modelo de esta manera:

Visitor = sequelize.define('visitor', {
  id: {
        type: Sequelize.INTEGER,
        primaryKey: true,
        autoIncrement: true
  },
  email: Sequelize.STRING
})

resultado comando SQL es: “CREAR TABLA SI NO EXISTE” visitante “(” id “SERIAL,” correo electrónico “varchar (255) …”

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *