الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

How to get Response From SQL Server DataBase ?

مغلق
بدأه hazzoom في 19 يوليو 2006 · 8 رد · 597 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

معلش هوا السؤال غريب بس مش عارف أصيغه ازاي ,

لو أنا شغال علي قاعدة بيانات SQL Server وللعلم 2000 علي سيرفر وقام أحد بالاتصال بالقاعدة من جهاز آخر وقام بالتعديل في قيمة ما في جدول ما في القاعده كيف أعرف وأنا علي السيرفر ان القيمة أصبحت كذا ؟؟؟ يعني عايز القاعدة ترد علي وتخبرني بالقيمة الجديده وذلك من خلال برنامج دوت نت ؟

أنا فكرت أعمل Timer وكل شوية أعمل Check علي القيم بس العملية دي مرهقه للـ CPU Recources وخصوصا لو القيم كثيره, فألا يوجد حل آخر ؟

أرجو فتح نقاش في هذا الموضوع , وجزاكم الله خيرا ,,,

#2

يمكنك عمل جدول جديد تضع فيه الحقول التالي مثلا

الاول هو رقم السجل نخزن فيه المفتاح الاساسي للجدول

الثاني هو اسم الجدول

الثالث نوع الحركة (اضافة, تعديل ,حذف)

الرابع اسم المستخدم

و تقوم بعمل trigger لكل الجداول التي يمكن ان يعدل عليها المستخدم

و ذلك after insert, update, delete

و تقوم في هذا القادح باضافة قيم الى الجدول السابق اي رقم السجل الذي حصل عليه الحركة

و من ثم اسم الجدول الذي حصل عليه الحركة و نوع الحركة(اضافة, تعديل, حذف)

الان في برنامجك في dot net تقوم بعمل استعلام يقوم باحضار الحركات التي تمت على السجلات

وذلك كما يلي مثلا

select * from @tableName where ID = @FieldName

و يمكنك عمل timer لعرض السجلات بشكل مباشر

او وضع زر يقوم باظهار التعديلات التي تمت على قاعدة البيانات

تم تعديل هذه المشاركة بواسطة waeldalol في 19 يوليو 2006 في 16:21

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#3

ما أنا يا وائل عايز أبعد عن فكرة التايمر دي ألا توجد فكره أخري ؟؟؟

تم تعديل هذه المشاركة بواسطة hazzoom في 19 يوليو 2006 في 18:36

#4

اذا اردت لا تضع timer قم بوضع زر يقوم بالحصول على هذه التعديلات

عند الضغط عليه يتم الحصول على التعديلات ما المشكلة في هذا؟ ارجوا التوضيح ما هو سبب انك تريد الحصول على التعديلات بدون عمل اي شيئ؟

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#5

بالنسبه للتايمر زي ما قلتلك :

اقتباس
أنا فكرت أعمل Timer وكل شوية أعمل Check علي القيم بس العملية دي مرهقه للـ CPU Recources وخصوصا لو القيم كثيره,

وبالنسبه لموضوع الزر مينفعش لأني عايز أحس بالتغييرات بمجرد حدوثها مباشره (في لحظتها) ,

وبالنسبه للـ Triggers أنا فكرت فيها ,لكن كيف( أ Manage) الـ Triggers من خلال الدوت نت :D

ياسلام لو كانت للـ Tables أحداث زي الـ Controls كانت ريحت المشوار خالص :D

وبعد أن اقتربت من اليأس في ايجاد فكره , هل ما أفكر فيه يمكن عمله أصلا ؟؟؟ شاركونا النقاش , وجزاكم الله خيرا ,,,

تم تعديل هذه المشاركة بواسطة hazzoom في 19 يوليو 2006 في 22:20

#6

في عندك برنامج ضمن البرامج التي تنزل مع SQL Serrver

اسمه Profiler

يقوم بمراقبة كافة العمليات على قاعدة البيانات

ممكن تختار الجدول و حتى المستخدمين يلي تراقبهم أو تراقب كل

الناس و يتم تخريج النتائج إلى الملف

سلام

#7

هو يريدها في برنامج dot net و لا اعلم اذا كان هناك طريقة ما لاخذ النتائج من profler الى البرنامج

لا يمكن على ما اعتقد الحصول على التحديثات من قاعدة البيانات بدون عمل تحديث و لعمل اي تحديث بشكل تلقائي نحتاج الى timer

الا اذا كان هناك شيئ في dot net يكون على اتصال مباشر اي عند حصول اي تعديل في قاعدة البيانات يظهر هذا التعديل في dataset او ما شابه

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#8
اقتباس
لو أنا شغال علي قاعدة بيانات SQL Server وللعلم 2000 علي سيرفر وقام أحد بالاتصال بالقاعدة من جهاز آخر وقام بالتعديل في قيمة ما في جدول ما في القاعده كيف أعرف وأنا علي السيرفر ان القيمة أصبحت كذا ؟؟؟ يعني عايز القاعدة ترد علي وتخبرني بالقيمة الجديده وذلك من خلال برنامج دوت نت ؟

فكرة تمر في رأسي لم أجربها بفعالية

SQL Server Notification Service

:unsure: :^)

فكر بطريقة أخرى

#9

شكرا أخي Desigen , وشكرا يا وليد , سأقرأ عنها وأبحث ثم أرد لك خبر ان شاء الله ,,,

هذا الموضوع مغلق.

مواضيع مشابهة