🔥 ۴۰ درصد تخفیف ثبت‌نام دوره‌ها قبل از افزایش قیمت‌ها
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ استاد آبتین بختیاری
خطای (errno: 150 "Foreign key constraint is incorrectly formed")
دلنواز قانونی حل شده توسط دلنواز قانونی

سلام استاد من چک کردم و type‌های user_id و author_id کاملا یکسانه ولی بازم این خطا رو میگیرم موقع اجرای migrate

user_id: {
        type: Sequelize.INTEGER.UNSIGNED,
        allowNull: false,
        autoIncrement: true,
        primaryKey: true
      },
      author_id: {
        type: Sequelize.INTEGER.UNSIGNED,
        allowNull: false,
        references: {
          model: "User",
          key: "user_id"
        },
        onUpdate: "CASCADE",
        onDelete: "SET NULL"
      },

سلامی دوباره من مشکل قبل رو حل کردم الان به یک error جدید برخوردم

ERROR: Cannot add or update a child row: a foreign key constraint fails (`database_development`.`posts`, CONSTRAINT `posts_ibfk_1` FOREIGN KEY (`author_id`) REFERENCES `users` (`user_id`))
استاد آبتین بختیاری ۲۶ مهر ۱۴۰۳، ۲۳:۰۷

سلام،

1. مطمئن شو author_id که می‌خوای وارد کنی توی جدول users وجود داره.
2. اگه از onDelete: "SET NULL" استفاده می‌کنی، allowNull برای author_id رو به true تغییر بده یا به جای onDelete: "SET NULL" از onDelete: "CASCADE" استفاده کن تا وقتی رکورد کاربر حذف شد، تمام پست‌های مربوطه هم حذف بشن.
3. مطمئن شو که ترتیب ایجاد جدول‌ها در migration درست باشه (اول users، بعد posts).

بهترین پاسخ
دلنواز قانونی ۲۸ مهر ۱۴۰۳، ۰۰:۲۹