استخدام الجداول المؤقته في SQL Server استخدام الجداول المؤقته في SQL Server - اقرا معي وتعلم على الانترنت

استخدام الجداول المؤقته في SQL Server

استخدام الجداول المؤقته في SQL Server


لزيارة الدرس السابق من هنا قواعد البيانات العلائقية الـ view

تعرف الجداول المؤقتة في الـ SQL على انها الجداول التي يتم انشاؤها لتخديم غرض مؤقت ويستمر وجودها لفترة محددة من الزمن او خلال جلسة ما او خلال مناقلة.

استخدام الجداول المؤقته في SQL Server

تختلف الصيغة المخصصة لإنشاء جدول مؤقت في قواعد البيانات المختلفة ففي حالة SQL Server تكون الصيغة كما يلي :
CREATE TABLE # tmp_Table (Field1Name Field1Type , Field2Name Field2Type;
نلاحظ في الصيغة اننا استخدمنا صيغة انشاء الجداول المعروفة CREATE TABLE ولكننا اضفنا اشارة الشارب #  قبل اسم الجدول للتعبير عن كونه جدول مؤقت.
في SQL Server لكي يكون الجدول المؤقت محلي أي لا يمكن الوصول اليه الا عبر الاتصال الذي قام بإنشائه نستخدم اشارة واحده فقط # .
اما لو اردنا ان يكون الجدول المؤقت عام متاح لاي مستخدم نستخدم اشارتين ##.
يتم انشاء الجداول المؤقتة في SQL Server دائماً في قاعدة البيانات tempdb الخاصة بالنظام, عندما لا يحذف اتصال ما الجدول التي انشائها يتم حذفها تلقائياً فور إلغاء الاتصال.
مثال :
لدينا الجدول Students الذي يحتوي قائمة بأسماء الطلاب studentName وارقامهم studentID ودرجاتهم studentMark لإنشاء الجدول المؤقت الذي يحتوي اسماء الطلاب ومعدلات نستخدم الصيغة التالية:
CREATE TABLE #tmp (studentName varchar(50) , average INT);
لملء هذا الجدول يمكننا استخدام الصيغة التالية :
Insert Into #tmp select Students.studentName AS studentName,
AVG (studentMark) AS average from Students;
وللاستعلام عن الطلاب الراسبين مثلاُ أي الذين حصلوا على اقل من 50 درجة يمكننا كتابة الاستعلام التالي :
Select studentName , average from #temp where average<50;

استخدام الجداول المؤقتة في Oracle :

تستخدم قواعد البيانات Oracle لانشاء جدول مؤقت الصيغة CREATE GLOBAL TEMPORARY TABLE عوضا عن CREATE TABLE المستخدمه في SQL Server ويأخذ الصيغة التالية :
CREATE GLOBAL TEMPORARY TABLE temp_table AS query;
تعبر query عن الاستعلام الذي تحدد الحقول التي يعيدها اعمدة الجدول المؤقت temp_table .
ولكي نقوم بملء الجدول المؤقت بالقيم سنحتاج الى صيغة منفصلة وهي
Insert Into temp_table query;

مثال:
اذا اردنا انشاء الجدول المؤقت myTemp والذي يحتوي على الحقول productName و productPrice المستخلصة من الجدول Products يمكننا كتابه الصيغة التالية :
CREATE GLOBAL TEMPORARY TABLE myTemp AS
select productName , productPrice from Products;
وكما ذكرنا لن يكون للاستعلام السابق أي دور في ملء الجدول المؤقت بالبيانات لذا سنحتاج الى الصيغة التالية لملء الجدول الصيغة التالية :
Insert Into myTemp select productName , productPrice from Products;


اكتفي بهذا ونلتقي في الدرس القادم وهو استخدام الجداول المؤقتة في DB2 واستخدام الجداول في MySQL
شارك الموضوع
تعليقات
محتوى قد يهمك

.