sql >> Database teknologi >  >> RDS >> Mysql

sequelize - Kan ikke tilføje en begrænsning af en fremmednøgle

Denne er almindelig typefejl opstår hovedsageligt på grund af

1. Når den primære nøgledatatype og den fremmede nøgle datatype matchede ikke

return sequelize.define('RefreshToken', {
    userId: {
      type: DataTypes.INTEGER(11), // The data type defined here and 
      references: {
        model: 'Users',
        key: 'idUsers'
      }
    }, 


return sequelize.define('Users', {
    idUsers: {
      type: DataTypes.INTEGER(11),  // This data type should be the same
    },

2. Når den refererede nøgle ikke er en primær eller unik nøgle.

Du kan ikke have to primære nøgler, så andre refererede nøgler bør defineres unikke. unique:true

 return sequelize.define('Users', {
    idUsers: {
      primaryKey: true  
    },
    mail: {
      type: DataTypes.STRING(45),
      allowNull: false,
      primaryKey: true   // You should change this to 'unique:true'. you cant hv two primary keys in one table. 
    }


  1. Hvad er den hurtigste måde at indsætte værdier fra datagridview til mysql database

  2. Hvordan vælger man en SQL over flere partitioner?

  3. Hvordan jeg kan oprette forbindelse til Oracle i ADO.NET Entity Data Model

  4. maven start postgres server