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

كيف أحدد ال SP الذي قام بالتعديل على جدول ما ؟

بدأه Xacker في 19 مايو 2010 · 19 رد · 1,432 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

لدي برنامج محاسبة يستخدم قاعدة بيانات SQL 2000  وأقوم بتتبع الـ SP التي تقوم ببعض العمليات حتى أنقلها إلى تقارير يمكن للبعض استخدامها دون الحاجة إلى وجود البرنامج المحاسبي لديهم، يعني direct query إلى السيرفر من خلال ملف Excel مثلاً..

المهم من كل هذا أنه في بعض الأوقات أسجل استدعاء SP تمرر إليه بعض البارامترات بعضها لا أستطيع معرفة كيف تم توليدها فهو يختلف من استدعاء إلى آخر مباشرة.. فأتبعها إلى الجدول الذي تم تسجيلها فيه لكني لا أستطيع إعادة توليد العملية بنفسي.

ما أرغب بمعرفته هو كيفية معرفة الـ SP الذي قام بالتعديل على جدول معين كإضافة INSERT .. بحثت كثيراً ووجدت طريقة لكنها تستلزم التعديل على SP وهي كثيرة ولا أجرؤ على المساس بها خوفاً من تخريب القاعدة .

هل هناك أي طريقة للحصول على اسم الـ SP في trigger نقوم بإنشائه ؟

لست خبير SQL فالرجاء الرفق بي في الرد والتوضيح دون إيجاز  :blush:

الأمر مهم جداً فهو سيسهل علي إنشاء العديد من التقارير الديناميكية  وتجعلهم   :D  جداً.

بارك الله بكم وشكراً سلفاً.

1

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#2

:unsure:

1

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

الحل الذى ارفقته حل جيد و هو ما نتبعه عادة فى احوال معينة عندما نود عمل Audit على ال SPs

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#4

بالتالي أفهم من كلامك أنه لا يوجد طريقة لفعل هذا على قاعدة بيانات موجودة مسبقاً تحوي المئات من الـ SPs، صح ؟

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#5

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

هذا و الله اعلى و اعلم

1

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#6

post-7008-12746121004692_thumb.gif

شكراً طارق.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#7

لو تود نصيحتى فإن كتابة التطبيق مرة اخرى بتصميم جيد سيكون افضل و اقل تكلفة لشركتك

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#8
طارق إبراهيم كتب:

لو تود نصيحتى فإن كتابة التطبيق مرة اخرى بتصميم جيد سيكون افضل و اقل تكلفة لشركتك

شركتي ليست برمجية :excl:

شركة أدوية تستخدم برنامج محاسبة ومستودعات (ما كنا قد تكلمنا فيه من قبل لربط قاعدة بياناته بالموقع لو تذكر).

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#9

انا اعلم

كتابة برنامج جديد سيكون اوفر لكم مع امتلاككم للسورس الخاص به مع تعديله و موائمته للعمل من خلال ال Services ليكون قابلاً للعمل عبر الشبكة المحلية او الانترنت

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#10
طارق إبراهيم كتب:

انا اعلم

كتابة برنامج جديد سيكون اوفر لكم مع امتلاككم للسورس الخاص به مع تعديله و موائمته للعمل من خلال ال Services ليكون قابلاً للعمل عبر الشبكة المحلية او الانترنت

أنت تعلم أن التطبيق الذي نستخدمه تجاري لا نملك السورس كود الخاص به

أم أنك تتكلم عن كتابة تطبيق خاص بالشركة فحسب :ohmy: ؟

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#11

Writing your software from scratch

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#12

أعتقد أن توقيت طرح مثل هذا الاقتراح عليهم غير مناسب في هذه الفترة.

فعلياً البارحة بعد أن أمضيت الليل في المكتب توصلت إلى قيمة كنت أبحث عنها وعرفت كيف يتم الحصول عليها حلّت لي العديد من المصاعب وتمكنت من إنشاء العديد من التقارير التي تتحدّث بياناتها لحظياً.. سيظهر لدي مشاكل جديدة لاحقاً وياليت كان هناك طريقة كالتي كنت أسأل عنها في هذا الموضوع...

بكل الأحوال، في سياق اقتراحك -- هل كتبت مثل هذه التطبيقات من قبل؟

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#13
اقتباس
هل كتبت مثل هذه التطبيقات من قبل؟

اى تطبيقات تقصد ؟

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#14

تطبيقات محاسبية لشركات أدوية ومستحضرات طبية، إدارة مخازن، فواتير، .... إلخ

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#15

بالطبع شاركت فى تصميم و تطوير هذه التطبيقات و إن كانت عامة و لا تخص شركات الادوية فقط إلا إن كان سير العمليات مختلف

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#16

تمام - نبقى نشوف لما يجي الوقت المناسب لطرح الاقتراح .. بشكل ما أتفق معك عليه لأني أجد أن التطبيق الذي يستخدموه أكثر مما يحتاجوه بكثير وفي أوقات يتصرف بطريقة غبية ناهيك عن الاستفادة من أن يكون هناك مشروع خاص بالشركة يمكن التعديل والتطوير فيه متى ما احتجنا لهذا.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#17

You can use SQL profiler to do these operations of listening to what is done on the server

Mohamed Meshref

Software Design Engineer

SQL Server Team

Microsoft Corporation, Redmond HQ

Phone: +1-(425)704-8684

Mobile: +1-(425)445-7386

Email: mmeshref(at)microsoft(dot)com

#18

بالفعل قام Xacker باستخدام SQL Profiler

هل يمكن مراقبة الاستعلامات الواردة لـ SQL server ؟

هو الان يريد مستوى اعمق لل Audit

Technical Lead Developer

My LinkedIn Profile

اللهم قنى شر الجهل و الجهلاء

( اقْتَرَبَ لِلنَّاسِ حِسَابُهُمْ وَهُمْ فِي غَفْلَةٍ مَّعْرِضُونَ ) {الأنبياء:1}

#19

So what information you're seeking that you can't get through profiler?

Mohamed Meshref

Software Design Engineer

SQL Server Team

Microsoft Corporation, Redmond HQ

Phone: +1-(425)704-8684

Mobile: +1-(425)445-7386

Email: mmeshref(at)microsoft(dot)com

#20
Mohamed Moshrif كتب:

So what information you're seeking that you can't get through profiler?

ما الـ functions أو الـ SPs التي قامت بالتعديل على بيانات جدول ما، كـ insert (حيث لا يمكن استخدام triggers).

أنا أحلل طريقة تبادل البيانات بين برنامج وقاعدته حتى أقوم ببناء استعلامات مناسبة أجلب من خلالها معلومات محددة من قاعدة البيانات أنشئ من خلالها تقريراً اختصاصياً شامل لكل النواحي التي قد يحتاجها مدير المبيعات أو المدير العام.. من خلال ميزة DDE في Excel.

طبعاً أسماء جداول القاعدة وأعمدتها obfuscated لذلك أصرف الكثير من الوقت في التحليل وتتبع الـ SPs حتى أصل إلى المصدر وأبدأ رحلة الهبوط مجدداً لأجمع كامل البيانات.

هل أصبح ما أبحث عنه واضحاً ؟

تم تعديل هذه المشاركة بواسطة Xacker في 7 يونيو 2010 في 11:53

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

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