كيف يمكن تنفيد أكثر من جملة في الاجراءات المخزنه؟
#1
Photo 
السلام عليكم 
هل من الممكن كيفيه تنفيد أكثر من جمله في إجراء مخزن واحد SP
بمعنى تنفيذ أكثر من أمر Select مربوط أحيانا بالجملة التي قبله في إجراء واحد 
أو  كل جمله نضعها في إجراء ونقوم بإستدعاء كل إجراء لوحده متتاليه
الرد
#2
(22-07-2018, 09:13 PM)ALG2009 كتب : السلام عليكم 
هل من الممكن كيفيه تنفيد أكثر من جمله في إجراء مخزن واحد SP
بمعنى تنفيذ أكثر من أمر Select مربوط أحيانا بالجملة التي قبله في إجراء واحد 
أو  كل جمله نضعها في إجراء ونقوم بإستدعاء كل إجراء لوحده متتاليه

مثال بسيط

كود :
SELECT * FROM Table1, Table2, Table3 WHERE Table1.Id_Nom1 = :Nom1 AND Table2.Id_Nom2 = :Nom2 AND Table3.Id_Nom3 = Table1.Id_Nom1
الرد
#3
الـ AND لا تنفع فالاستخدام كان في جملة الشرط فلو كان كل جمله مستقله عن الأخرى
حيث الأولى تكون
SELECT *
FROM Table1
والثانيه
Update UPDATE table_name. SET column1 = value1
الرد
#4
من الأفضل إرفاق الأسئلة بأمثلة أو صور توضيحية من صاحب السؤال.

حسب ما فهمت -

في SQL يمكن تنفيذ استعلامات متداخلة منها:

كود :
Select * from  Table1 where id = (select id from Table2) ;

مثال آخر من الأنترنت:


كود :
SELECT SalesOrderID, LineTotal, (SELECT AVG(LineTotal) FROM Sales.SalesOrderDetail) AS AverageLineTotal FROM   Sales.SalesOrderDetail ;


إذا كان هذا هو المطلوب ابحث عن subquery in select statement
أو إقرأ : https://www.w3resource.com/sql/subquerie...ueries.php
الرد
#5
لا أقصد  الإستعلامات المتداخله ما أقصده وهو عندك إجراء مخزن SP في قاعده البيانات من نوع FireBird

يعني عندك إستعلام يظهر قائمه الطلاب + النقاط
وإستعلام يقوم بالتحدث النقاط على سبيل المثال
كود :
STELEC Names,Grades FROM Students UPDATE students SET grades =18 WHERE grades=17


كما نلاحظ هناك أكثر من إستعلام في الاجراء المخزن كيف يتم تنفيذ هذا الاجراء بدون أخطأ


السؤال بطريقه أخرى كيف يمكن تنفيذ أكثر من إستعلام في الاجراءات المخزنه(SP) ؟
الرد
#6
السلام عليكم في حالة كان تحديث البيانات يعتمد على الاستعلام يمكنك استخدام FOR SELECT ... INTO ... DO
https://firebirdsql.org/refdocs/langrefu...elect.html

http://delphi4arab.net/forum/showthread....5#pid45925
و لرب نازلة يضيق لها الفتى ذرعا و عند الله منها المخرج
ضاقت فلما استحكمت حلقاتها فرجت و كنت اضنها لا تفرج
الرد
#7
نفدهم كل على حدة
ثلاث اجراءات مثلا
واحد تحديد والثاني تحديث والثالث اضافة
يمكنك استدعائهم بالتوالي في اجراء رابع
او من برنامجك
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
[-] كل من 1 user says قال شكرا ل Delphi4Us على المشاركة المفيدة
  • ALG2009
الرد
#8
عذرا على التأخر
بارك الله فيكم
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 2 ) ضيف كريم