يعطيكم العافية
شلون الصحة
دور في المنتدى قبل طرح الموضوع
ما هي الفائدة من مجموعات الملفات
و الأهم كيف أستخدمها
أي كيف أحدد أن هذا الجدول في هذا الملف
سينزل الملف تحت هذه المجموعة
شكرا لكم
سلام
يعطيكم العافية
شلون الصحة
دور في المنتدى قبل طرح الموضوع
ما هي الفائدة من مجموعات الملفات
و الأهم كيف أستخدمها
أي كيف أحدد أن هذا الجدول في هذا الملف
سينزل الملف تحت هذه المجموعة
شكرا لكم
سلام
رأيت هذا السؤال بدون اجابة فبحثت في المنتدى فلم اجد ان احد من قبل قام بشرح FileGroup
لا اعلم قد يكون على كلن سوف اضع شرح مفصل لهذا الموضوع لعل و عسى ان يفيد احدهم
وسف اضعه على شكل درس كامل يخدم هذا الموضوع باذن الله
السؤال الاول
اقتباسما هي الفائدة من مجموعات الملفات
سوف اقوم بتقديم خلفية مناسبة حتى تستطيع فهم هذا الموضوع و من ثم اتطرق الى الفائدة من مجموعات الملفات
تتكون قاعدة المعطيات في SQL من مجموعة من الجداول التي تحوي البيانات ومن أغراض أخرى كالفهارس والمناظير والإجرائيات المخزنة والتوابع المعرفة من قبل المستخدم.
يقوم مخدم قواعد المعطيات SQL Server بحفظ أغراض قاعدة بيانات في ملفات. كل قاعدة بيانات تحوي على مايلي:
1. الملف الأساسي Primary File: هذه الملفات لها اللاحقة (.mdf)
يحوي هذا الملف البيانات الإقلاع الأساسية لقاعدة البيانات. كما يمكن استخدام هذا الملف من أجل حفظ البيانات. تحوي قاعدة البيانات ملف واحد من نوع Primary File.
2. الملفات الثانوية Secondary File(s): هذه الملفات لها اللاحقة (.ndf)
تحوي هذه الملفات كل البيانات التي لا يمكن أن يتسع لها الملف الأساسي. إذا كان باستطاعة الملف الأساسي أن يحوي جميع البيانات في قاعدة المعطيات فإن قواعد البيانات ليست بحاجة إلى ملفات ثانوية. تكون بعض قواعد البيانات كبيرة بما يكفي لكي تخزن البيانات على أكثر من ملف ثانوي، أوتخزن البيانات على ملفات ثانوية على أقراص مختلفة أو على نفس القرص.
3. ملف المناقلات Transaction Log File: هذه الملفات لها اللاحقة (.ldf)
يخزن في هذه الملفات البيانات خلال وقبل المناقلات. تمكن هذه الملفات من استعادة Recover حالة قاعدة البيانات إلى وضعية سابقة.
يجب أن تحوي قاعدة البيانات على الأقل ملف مناقلات واحد.
مثال 1:
إذا أردنا أن نخلق قاعدة بيانات بسيطة لإدارة المبيعات sales، فإن أحد التقسيمات الممكنة لملفات هذه القاعدة هي:
1- أساسي: يحوي هذا الملف معلومات الإقلاع الأساسية لقاعدة البيانات بالإضافة إلى البيانات المخزنة في جداول القاعدة.
2- ملف مناقلات واحد.
أما إذا أردنا أن نخلق قاعدة بيانات أكثر تعقيدا لإدارة الطلبيات Orders، فإن أحد التقسيمات الممكنة لملفات هذه القاعدة:
1- ملف أساسي واحدة يحوي معلومات الإقلاع الأساسية.
2- خمس ملفات ثانوية تحوي بيانات قاعدة البيانات.
3- أربع ملفات مناقلات لإستعادة حالة قاعدة البيانات إلى وضعية سابقة.
تتوزع البيانات والأغراض في قاعدة البيانات السابقة على ستة ملفات ( خمس ملفات ثانوية وملف أساسي واحد). كما تخزن بيانات المناقلات في أربع ملفات مناقلات.
بالنسبة لتجميع الملفات حسب مجموعات:
عند توليد الملفات التي سنخزن فيها معلومات قاعدة البيانات، يمكن لهذه الملفات أن توزع على مجموعات تسمى مجموعات الملفات
file groups.
تقسم ملفات قاعدة البيانات إلى مجموعات ولذلك لتسهيل عمليات (1) الإدارة (2) حجز/إلغاء حجز مساحات للبيانات.
مثال2:
في قاعدة بيانات مؤلفة من الملفات (data1.ndf, data2.ndf, data3.ndf) يمكن لهذه الملفات أن تنشأ على ثلاثة أقراص مستقلة، كما يمكن وضع هذه الملفات في مجموعة ملفات file group واحدة ولتكن fgroup1. عند إنشاء جدول T ، يمكن تحديد مجموعة الملفات file group التي ستخزن عليها بيانات الجدول. عند الإستعلام عن بيانات من الجدول T فإن الإستعلام سوف يبحث عن البيانات في ثلاثة أقراص ( وهذا ما يزيد من الفعالية للإستعلامات ).
قواعد تصميمية هامة جدا:
1. ملف a file أو مجموعة الملفات a file group لا يمكن أن تنتمي لأكثر من قاعدة بيانات.
2. يمكن للملف أن يكون من ضمن مجموعة ملفات واحدة.
3. ملفات المناقلات لا يمكن أن تنتمي إلى أي مجموعة ملفات.
في هذا الموضوع قد يمر معك ذكر مصطلح جديد وهو مجموعة الملفات الافتراضية او ما يسمى Default File Group
سوف اقوم بشرح هذه النقطة من خلال عدة نقاط
1. تحوي قاعدة البيانات على مجموعة ملفات إفتراضية، بالإضافة إلى مجموعة مجموعات الملفات المعرفة من قبل المستخدم.
2. مجموعة الملفات التي تحوي الملف الأساسي Primary File هي مجموعة الملفات الأساسية Primary file group.
3. مجموعات الملفات المعرفة من قبل المستخدم هي مجموعات الملفات المعرفة من قبل المستخدم عند إنشاء قاعدة البيانات أو عند تعديل altering قاعدة البيانات.
4. عندما تمتلئ مجموعة من الملفات معرفة من قبل المستخدم ( يحدث ذلك إذا كان الخيار autogrow غير مفعل ) فقط الجدوال الموجودة على هذه المجموعة سوف تتأثر بذلك.
5. من بين مجموعات الملفات ( المجموعة الأساسية و المجموعات المعرفة من قبل المستخدم) يوجد دائما مجموعة افتراضية default file group.
6. عند إنشاء غرض جديد في قاعدة البيانات ( جدول، إجرائية، فهرس،... ) ولم يتم تحديد مجموعة لوضع الغرض الجديد فيها، فإنه يتم إنشاء هذا الغرض ضمن المجموعة الإفتراضية.
7. بشكل عام : المجموعة الأساسيةPrimary File Group ( المجموعة التي تحوي الملف الأساسي ) هي المجموعة الإفتراضية Default File Group .
8. يمكن تغير المجموعة الإفتراضية باستخدام التعليمة ALTER DATABASE.
قد تكون الامور التي تكلمت عنها قبل قليل هي مبهمة بعض الشيئ و لكن تابع الى النهاية حتى تستطيع ان تفهم الغموض الذي ممكن
انك تشعر به الان
سؤال ممكن ان يُطرح:
ما هي طريقة توزيع البيانات على مجموعات الملفات؟؟؟؟
لنفرض أنه لدينا مجموعة الملفات fg تتكون هذه المجموعة من الملفين f1=100MB و f2=200MB. وكنا قد أنشأنا ضمن مجموعة الملفات fg الجدول T.
عند إضافة بيانات إلى الجدول T، فإن جزء من هذه البيانات يخزن ضمن الملف f1 وجزء آخر يخزن ضمن الملف f2. لنفرض أن حجم البيانات المضافة إلى الجدول T هو 6MB فإنه 2MB سوف تخزن في الملف f1 و 4MB سوف تخزن في الملف f2. نلاحظ أن توزيع الإضافة بتناسب مع الحجم المخصص لكل ملف. أي أن الملفين f1 و f2 سوف ينموان جنبا إلى جنب.
هذه معلومة هامة يجب الانتباه اليها
اي انه يتم توزيع البيانات بشكل طردي مع حجم الملفات
احدهم ممكن ان يقول يا اخي دوختنا و لسا لهلأ ما فهمت شي !!!! :wacko:
سوف اجيبه انتظر قليلا الخير إن شاء الله قادم بس استنى شوي
ملاحظة هامة جدا يا شباب عند انشاء اي قاعدة بيانات:
قبل إنشاء قاعدة بيانات، يجب التفكير والأخذ بعين الإعتبار النقاط التالية:
1. حدد اسم قاعدة البيانات.
2. حدد اسم المالك owner لقاعدة البيانات ( الشخص الذي يقوم بإنشاء قاعدة البيانات هو المالك للقاعدة).
3. لإنشاء قاعدة بيانات يجب أن يكون المالك لهذه القاعدة عضو من إحدى المجموعتين sysadmin أو من dbcreator.
4. المستخدم الذي يقوم بإنشاء قاعدة البيانات يصبح المالك للقاعدة.
5. لا يمكن إنشاء أكثر من 32.767 قاعدة بيانات على مخدمات SQL Server.
6. قبل أن تنفذ تعليمة خلق قاعدة بيانات، اتصل على قاعدة البيانات master.
الان سوف اشرح كيفية استخدام SQL لكي تنشئ قاعدة بيانات بشكل بسيط جدا(يا شباب هنا الدسم)
ثم سوف اتطرق الى انشاء قاعدة بيانات بطريقة تحكمية اكثر(اصعب)
ثم بالنهاية سوف اتطرق الى كيفية انشاء قاعدة بيانات باستخدام FileGroup
ثم سوف اشرح كيفية اضافة جدول و تحديد ال FileGroup له
دعونا نبدأ بعون الله
1- انّ اسهل و اقصر تعليمة لانشاء قاعدة بيانات في SQL هي
CREATE DATABASE mytest
هذه التعليمة بإنشاء قاعدة بيانات على المسار الإفتراضي. اسم الملف الأساسي mytest.mdf، واسم ملف المناقلات mytest_log.ldf
2- تعليمة انشاء قاعدة بيانات بشكل تحكمي اكثر اي تستطيع التحكم اكثر
CREATE DATABASE Products ON ( NAME = prods_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\prods.mdf', SIZE = 4, MAXSIZE = 10, FILEGROWTH = 1 )
تقوم هذه التعليمة بإنشاء قاعدة بيانات بسيطة مؤلفة من ملف أساسي
مع تحديد المسار له و تحديد الاحجم الابتدائي و هو 4 MB
و تحديد الحجم الاكبر و هو 10 MB
ويتم ايضا تحديد معدل التزايد لقاعدة البيانات اي انه اذا امتلأت قاعدة البيانات ما هو الحجم الذي سوف تزداد به تم ضبط
الخيار FILEGROWTH ليتم زيادة الحجم بمقدار 1 MB
ملاحظة هامة ياشباب: إذا لم يتم تحديد ملف مناقلات يتم إنشاء ملف مناقلات يحمل اسم قاعدة البيانات مضافيا إليه اللاحقة _LOG.LDF
3- الان سوف نعقد المسألة شوي سوف ننشئ قاعدة بيانات مع تحديد مكان تخزين البيانات و مكان ملف المناقلات
USE master GO CREATE DATABASE Sales ON ( NAME = Sales_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\saledat.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = 'Sales_log', FILENAME = 'c:\program files\microsoft sql server\mssql\data\salelog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB )
تقوم هذه التعليمة بخلق قاعدة بيانات Sales.
الملف الأساسي Sales_dat. لم يتم تحديد وحدة لحجم الملف الأساسي ولا للحجم الأعلى ولا لمقدار النمو لذلك الوحدة هي MB.
ملف المناقلات sales_log حجمه5MB الحجم الأعظمي له 25MB مقدار النمو 5MB.
4- الان سوف ننشئ قاعدة بيانات بتحديد أكثر من ملف بيانات وأكثر من ملف مناقلات
USE master GO CREATE DATABASE Archive ON PRIMARY ( NAME = Arch1, FILENAME = 'c:\program files\microsoft sql server\mssql\data\archdat1.mdf', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20 ), ( NAME = Arch2, FILENAME = 'c:\program files\microsoft sql server\mssql\data\archdat2.ndf', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20 ), ( NAME = Arch3, FILENAME = 'c:\program files\microsoft sql server\mssql\data\archdat3.ndf', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20 ) LOG ON ( NAME = Archlog1, FILENAME = 'c:\program files\microsoft sql server\mssql\data\archlog1.ldf', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20), ( NAME = Archlog2, FILENAME = 'c:\program files\microsoft sql server\mssql\data\archlog2.ldf', SIZE = 100MB, MAXSIZE = 200, FILEGROWTH = 20 )
تقوم هذه التعليمة بإنشاء قاعدة بيانات من 100MB لملفات البيانات و 100MB لملفات المناقلات. الملف الأساسي هو أول ملف في السلسلة وقد تم تميزه عن غيره بكلمةPrimary . ملفات المناقلات تم تمييزها بـ LOG ON. لاحظ امتداد الملفات المتسخدمة من أجل الملفات الثانوية والأساسية وملفات المناقلات.
كيف يمكن انشاء مجموع ملفات الى الان لم نتحدث عن هذا الشيئ
لا يوجد تعليمة خاصة لانشاء مجموعة ملفات و لكن يمكن انشاء مجموعة الملفات عند انشاء قاعدة البيانات
كما في المثال القادم
5- انشاء قاعدة بيانات مع تحديد مجموعة الملفات لكل ملف اي مع تحديد كل ملف الى اين سوف يذهب
CREATE DATABASE Sales ON PRIMARY ( NAME = SPri1_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SPri1dat.mdf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 15% ), ( NAME = SPri2_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SPri2dt.ndf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 15% ), FILEGROUP SalesGroup1 ( NAME = SGrp1Fi1_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SG1Fi1dt.ndf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ), ( NAME = SGrp1Fi2_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SG1Fi2dt.ndf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ), FILEGROUP SalesGroup2 ( NAME = SGrp2Fi1_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SG2Fi1dt.ndf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ), ( NAME = SGrp2Fi2_dat, FILENAME = 'c:\program files\microsoft sql server\mssql\data\SG2Fi2dt.ndf', SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 ) LOG ON ( NAME = 'Sales_log', FILENAME = 'c:\program files\microsoft sql server\mssql\data\salelog.ldf', SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB )
تقوم هذه التعليمة بإنشاء قاعدة بيانات واضعة:
1. الملفات spri1_dat, spri2_dat ضمن مجموعة الملفات الإفتراضية.
2. الملفات SGrp1Fi1, SGrp1Fi2 ضمن مجموعة الملفات SalesGroup1.
3. الملفات SGrp2Fi1, SGrp2Fi2 ضمن مجموعة الملفات SalesGroup2.
لاحظ اننا لم نضع File Group للملفات الثانوية
نصائح حول استخدام مجموعات الملفات لتحسن الأداء:1.
معظم قواعد البيانات تعمل بشكل جيد باستخدام ملف أساسي واحد وملف مناقلات واحد.
2. إذا استخدمت أكثر من ملف، ملف أساسي وملفات ثانوية، أنشىء مجموعات ملفاتfg ثانية تحوي الملفات الثانوية، استخدم تعليمة alter database لتصبح مجموعات الملفات fg هي المجموعة الإفتراضية. بهذه الطريقة يمكن فصل بيانات الجداول عن بيانات إقلاع قاعدة المعطيات.
3. لزيادة الفعالية والأداء لقاعدة المعطيات، أنشىء مجموعات الملفات على أقراص مختلفة. فإذا كان لديك جدولين T1 و T2 وكلا الجدولين ينمو بشكل سريع. ضع الجدولين في مجموعتين مختلفتين.
4. إذا كنت تستخدم علميات ربط join بين جدولين، ضع كلا من الجدولين في مجموعتين مختلفتين. هذا الأمر يزيد بشكل كبير من الفعالية وذلك أن عملية البحث عن البيانات التي سوف يتم ربطها تتم بطريقة تفرعية.
5. ضع ملفات المناقلات على أقراص مختلفة عن الأقراص التي تحوي مجموعات ملفات.
في النهاية كيف احدد مجموع الملفات التي سوف يخزن بها الجدول
الوضع الافتراضي للملف الذي سوف يذهب اليه الجدول هو الى مجموعة الملفات الافتراضية
اي اذا لم تحدد المكان الذي سوف يذهب اليه الجدول فانك سوف تجده في مجموعة الملفات الافتراضية
ملاحظة: يمكن ايضا تحديد مجموع الملفات التي سوف يذهب اليها كل من الفهرس و القيد مثل الجدول تمام
مثال على انشاء جدول في مجموعة الملفات SalesGroup1 في المثال السابق
create table t1 ( id int , Name varchar(20) ) on SalesGroup1
اخير سوف اقدم لكم هدية جميلة جدا مني لكم و هي
بعض الاجرائيات المخزنة المهمة من أجل الحصول على معلومات قاعدة بيانات:
1. sp_helpdb: يعطي تقرير حول قاعدة البيانات، أو مجموعة قواعد البيانات.
مثال:
Sp_helpdb Sp_helpdb pubs
2. sp_helpfile: يعطي تقرير حول مواصفات ملفات قاعدة البيانات الحالية، أو تقرير حول ملف مستخدم في قاعدة البيانات الحالية.
مثال :
Sp_helpfile Sp_helpfile mastlog
3. sp_helpfilegroup: يعطي تقرير حول مجموعات الملفات في قاعدة البيانات الحالية أو وصف لمجموعة الملفات المستخدة في مجموعة ملفات ضمن قاعدة البيانات الحالية:
مثال:
use northwind go sp_helpfilegroup sp_helpfilegroup 'primary'
4. sp_renamedb: تغير اسم قاعدة البيانات.
مثال :
use master go sp_renamedb 'northwind','nowind' sp_renamedb 'nowind','northwind'
5. sp_spaceused: يعطي تقرير حول المساحة المستخدمة بشكل فعلي والمساحة الكلية المحجوزة لقاعدة البيانات الحالية:
مثال :
use master go sp_spaceused
ارجو الدعاء لي في حال الاستفادة وشكرا لكم جميعا
رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.
لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"
يا سلام عليك .. بلش العمل إذاً .. :lol:
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
السلام عليكم يا design لقد سلألت في المنتدى نفس السؤال من قبل و قد أجابني عليه المشرفون :
أتمنى لك الفائدة .. :)
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
هو فعلا السؤال يلي طرحته رائع يعني استعلام
من جدول يرسل اسمه كرامتر
لكن أنا المشكله هي كيف بدي
أعمل شرط عند الإستعلام في عبارة Where
و ذلك طبعا بدون استخدام IF قبل الإستعلام
شكرا
السلام عليكم أخ design : هل الإجرائية التالية تجيب على استفسارك ؟
Create Table EMP_TB(id int identity(1,1) , Name Nvarchar(50) )
Create Proc IDorNAME @ID Int = Null, @Name Nvarchar(50) = Null AS Declare @q Nvarchar(4000) Set @q = 'Select * from EMP_TB ' if( Not ( (@ID IS NULL) And (@Name IS NULL) ) ) Set @q = ' WHERE ' If ( Not (@ID IS NULL)) Begin Set @q = @q + ' Id = ' + Cast( @id AS NVarchar(20) ) If ( Not (@Name IS NULL)) Set @q = @q +' And Name = ''' + @Name + '''' End Else If ( Not (@Name IS NULL)) Set @q = @q +' Name = ''' + @Name + '''' Print @q Exec(@q) Go
الإختبار :
IDorNAME @ID = 1 --- IDorNAME @ID = 1, @Name = 'Ahmad' --- IDorNAME @Name = 'Ahmad' ---
بمعنى اخر على كيفك .. :)
الله يوفقك .. ;)
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
إنت عيني اليوم وجدت الحل
و الحل مشابه جدا لكلامك
أولا ننشئ Varchar Variable
و نسند له الصغية العامة للإستعلام
مع العبارة From و العبارة
Where الخاصة بربط الجداول
بعد ذلك نقوم بإستخدام If
لإضافة الشروط التي نريدها حسب البرمترات
و نممرر المتحول للـ execute
شكرا لك
و شكرا لإجابتك
سلام
اقتباسإنت عيني اليوم وجدت الحل
الحمد لله أنك استفدت . :)
إنت من الشام ؟؟!! لأنو محسوبك حمصي :P
من أي منطقة بس و ما هي دراستك ؟
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
تشرفنا
أنا من الشام و عم ادرس تكنولجيا المعلومات بالجامعة الإفتراضية
السنة الثالثة
شو عم تساوي حضرتك ؟
راسل أخي Design :
imadouzoun@yahoo.com
لعل و عسى ************* شوفك شي مسى :P
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
هذا الموضوع مغلق.