طَبِّقْهاتعلّم المبدأ، وطبّقه بيدكمقرر 242 · أطر الويب
تقييم الدرس 13

ORM و Sequelize: النماذج والجداول

أجب عن الأسئلة ثم اضغط «صحّح ورقتي» في آخر الصفحة. ← العودة إلى الدرس

أسئلة التقييم

تقييم الدرس 13: ORM و Sequelize: النماذج والجداول. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) ORM اختصار لـ:
2) ما الذي يقابل SELECT * FROM Books WHERE year > 2020 ؟
3) أي خطأ يظهر عند إدخال بريد مكرر في عمود unique؟
4) ما خطورة Book.destroy({}) بلا where؟

2السؤال الثاني: صح أم خطأ

1) Sequelize يضيف عمود id و createdAt و updatedAt تلقائيًّا.
الصواب: صح
2) دوال Sequelize متزامنة ولا تحتاج await.
الصواب: خطأ
3) يمكن تغيير قاعدة البيانات من SQLite إلى MySQL دون إعادة كتابة الاستعلامات.
الصواب: صح
4) sync({ force: true }) آمن على قاعدة بيانات فيها بيانات حقيقية.
الصواب: خطأ

3السؤال الثالث: أكمل الفراغات من القائمة المنسدلة

1) لجعل العمود مطلوبًا نكتب .
الإجابة: allowNull: false
2) لعدّ الصفوف نستخدم .
الإجابة: Model.count()

4السؤال الرابع: أسئلة عملية

1) ما جسم الاستجابة؟ GET /c

const express = require('express');const { Sequelize, DataTypes } = require('sequelize');const db = new Sequelize({ dialect: 'sqlite', storage: ':memory:', logging: false });const T = db.define('T', { n: DataTypes.INTEGER }, { timestamps: false });const app = express();app.get('/c', async (req, res) => res.json({ c: await T.count() }));db.sync().then(async () => {  await T.bulkCreate([{ n: 1 }, { n: 2 }, { n: 3 }]);  app.listen(3000);});
الاستجابة الصحيحة:
{"c":3}
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

📝 معلم؟ أرسل ملاحظة للمؤلف عن هذا الدرس