نظام إدارة بنك باستخدام Microsoft SQL Server

تفاصيل العمل

قمت بتصميم وتنفيذ نظام قاعدة بيانات متكامل لإدارة العمليات البنكية باستخدام Microsoft SQL Server، حيث يشمل النظام إدارة بيانات العملاء، الحسابات البنكية، القروض، والمعاملات المالية، مع تطبيق منطق الأعمال (Business Logic) داخل قاعدة البيانات لضمان تكامل البيانات وأمان العمليات.

اعتمد المشروع على استخدام لغة T-SQL بشكل متقدم، مع توظيف خصائص SQL Server المختلفة مثل الدوال المعرفة من قبل المستخدم (User Defined Functions)، الإجراءات المخزنة (Stored Procedures)، المشغلات (Triggers)، ودوال النوافذ (Window Functions).

أهم مكونات المشروع:

أولاً: الدوال المعرفة من قبل المستخدم (Functions)

تم إنشاء عدة أنواع من الدوال لتحقيق متطلبات مختلفة داخل النظام، منها:

دوال Inline Table-Valued Functions لاسترجاع بيانات العملاء أو تصفية الحسابات بين مدى معين من الرصيد.

دوال Multi-Statement Table-Valued Functions لإنشاء جداول ناتجة عن عمليات معالجة داخلية.

دوال Scalar Functions لإرجاع قيم مفردة مثل اسم الشهر من تاريخ معين، أو التحقق من وجود بيانات وإرجاع رسالة مناسبة.

تم استخدام العديد من الدوال المدمجة مثل:

UPPER, LOWER, LEFT, LEN, ISNULL, DATENAME, ROUND, CAST, REPLACE

وذلك لمعالجة البيانات النصية، تنسيق القيم، والتعامل مع القيم الفارغة.

ثانياً: الاستعلامات المتقدمة

تضمن المشروع كتابة استعلامات متقدمة تشمل:

استخدام CASE لتصنيف الحسابات حسب الرصيد.

استخدام RANK() OVER() لترتيب الحسابات تنازلياً أو تصاعدياً.

استخدام TOP لاستخراج أعلى الحسابات.

تنفيذ عمليات JOIN لربط جداول العملاء والحسابات والقروض.

ثالثاً: الإجراءات المخزنة (Stored Procedures)

تم إنشاء إجراء مخزن لإضافة عميل جديد مع تضمين منطق تحقق داخلي، حيث يتم:

التحقق من عدم تكرار رقم الهاتف قبل الإدخال.

منع إدخال بيانات غير صحيحة.

إرجاع رسائل توضيحية في حالة النجاح أو وجود خطأ.

هذا يعكس فهم آلية التحكم في إدخال البيانات وضمان تكاملها داخل النظام.

رابعاً: المشغلات (Triggers) وتطبيق منطق الأعمال

تم تنفيذ مشغل AFTER INSERT على جدول المعاملات بحيث:

يتم تحديث رصيد الحساب تلقائياً عند تنفيذ عملية إيداع أو سحب.

يتم منع تنفيذ العملية في حالة تسببها في رصيد سالب من خلال استخدام ROLLBACK للحفاظ على سلامة البيانات.

كما تم إنشاء مشغل INSTEAD OF DELETE على جدول القروض لمنع حذف القروض ذات الحالة "Successful"، مع السماح بحذف القروض الأخرى فقط، مما يعكس القدرة على التحكم الكامل في العمليات الحساسة داخل قاعدة البيانات.

ملفات مرفقة

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
1
تاريخ الإضافة
تاريخ الإنجاز
المهارات