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

Script Index

بدأه تيجر 2000 في 1 سبتمبر 2014 · 7 رد · 898 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم


 


لدى قاعده بيانات بها ما يقرب من 30 Index


هل يوجد طريقه اخذ بها Script لجميع الـ Index


(script index فقط )


للعمل على تنفيذها فى قاعده بيانات اخرى ؟؟


تم تعديل هذه المشاركة بواسطة تيجر 2000 في 1 سبتمبر 2014 في 10:33

#3

شكرا لك اخ كريم بارك الله لك


ولكنى اريد script index فقط


وليس جميع مكونات الجدول


بمعنى اذا كان الجدول الاول به 7 فهارس يكون الـ script خاص بهم فقط


والجدول الثانى 3 فهارس يكون الـ script خاص بهم وهكذا ولا اريد مع  الـ script اى Object اخرى


 


465039313.jpg


#4

الاخ العزيز

 

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

 

نقوم بفتح  SQL Server Management Studio 

Right Click On DataBase Name ------ > Reports  ------ > Index Physical

الأفكار العبقرية تأتي بالتعب و المجهود و الإلهام فيها لا يتعدى 1% ( أديسون )

#5

السلام عليكم و حمة الله

 

يمكن ذلك عن طريق ال Management Studio كما توضح الصورة.

 

بالتوفيق

post-35322-0-10922300-1409646765_thumb.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

#6

السلام عليكم


 


الاخ بلاك تيجر شكرا لك ولكنى اريد كود الانشاء وليس بيان بما هو موجود من فهارس


 


اخى imadouzoun  انا اريد طريقه لانشاء جميع الفهارس مره واحده وليس فهرس فهرس (ان امكن)



 
#7

اتفضل يا غالى

 

SELECT ' CREATE ' +
CASE WHEN I.is_unique = 1 THEN ' UNIQUE ' ELSE '' END +
I.type_desc COLLATE DATABASE_DEFAULT +' INDEX ' +
'+T.name + ' ( ' + K
I.name + ' ON ' +
Schema_name(T.Schema_id)+'
.eyColumns + ' ) ' +
ISNULL(' INCLUDE ('+IncludedColumns+' ) ','') +
.is_padded = 1 THEN ' PAD_INDEX = ON ' ELSE ' PAD_INDEX = OFF
ISNULL(' WHERE '+I.Filter_definition,'') + ' WITH ( ' +
CASE WHEN
I' END + ',' +
'FILLFACTOR = '+CONVERT(CHAR(5),CASE WHEN I.Fill_factor = 0 THEN 100 ELSE I.Fill_factor END) + ',' +
ELSE ' IGNORE_DUP_KEY
-- default value
'SORT_IN_TEMPDB = OFF ' + ',' +
CASE WHEN I.ignore_dup_key = 1 THEN ' IGNORE_DUP_KEY = ON
' = OFF ' END + ',' +
CASE WHEN ST.no_recompute = 0 THEN ' STATISTICS_NORECOMPUTE = OFF ' ELSE ' STATISTICS_NORECOMPUTE = ON ' END + ',' +
s = 1 THEN ' ALLOW_ROW_
-- default value
' DROP_EXISTING = ON ' + ',' +

-- default value

',' + CASE WHEN I.allow_ro

' ONLINE = OFF ' +

w_loc
kLOCKS = ON ' ELSE ' ALLOW_ROW_LOCKS = OFF ' END + ',' +
= ON ' ELSE ' ALLOW_PAGE_LOCKS = OFF ' END + ' ) ON [' + DS.name + ' ] ' [CreateIndexScript] FROM sys.indexes
CASE WHEN I.allow_page_locks = 1 THEN ' ALLOW_PAGE_LOCKS
I
JOIN sys.tables T ON T.Object_id = I.Object_id
JOIN sys.sysindexes SI ON I.Object_id = SI.id AND I.index_id = SI.indid

JOIN (SELECT * FROM (

' END FROM sys.index_columns IC1

 

SELECT IC2.object_id , IC2.index_id , STUFF((SELECT ' , ' + C.name + CASE WHEN MAX(CONVERT(INT,IC1.is_descending_key)) = 1 THEN ' DESC ' ELSE ' ASC
JOIN Sys.columns C ON C.object_id = IC1.object_id AND C.column_id = IC1.column_id AND IC1.is_included_column = 0 WHERE IC1.object_id = IC2.object_id
_columns IC2 --WHERE IC2.Object_id

 

AND IC1.index_id = IC2.index_id GROUP BY IC1.object_id,C.name,index_id ORDER BY MAX(IC1.key_ordinal) FOR XML PATH('')), 1, 2, '') KeyColumns FROM sys.inde
x = object_id('Person.Address') --Comment for all tables GROUP BY IC2.object_id ,IC2.index_id) tmp3 )tmp4 ON I.object_id = tmp4.object_id AND I.Index_id = tmp4.index_id
e_id=FG.data_space_id LEFT JOIN (SELECT * FROM ( SELECT IC2.object_i

 

JOIN sys.stats ST ON ST.object_id = I.object_id AND ST.stats_id = I.index_id JOIN sys.data_spaces DS ON I.data_space_id=DS.data_space_id JOIN sys.filegroups FG ON I.data_spa
cd , IC2.index_id , STUFF((SELECT ' , ' + C.name FROM sys.index_columns IC1 JOIN Sys.columns C ON C.object_id = IC1.object_id AND C.column_id = IC1.column_id AND IC1.is_included_column = 1
object_id('Person.Address') --Comment for al

 

WHERE IC1.object_id = IC2.object_id AND IC1.index_id = IC2.index_id GROUP BY IC1.object_id,C.name,index_id FOR XML PATH('')), 1, 2, '') IncludedColumns FROM sys.index_columns IC2 --WHERE IC2.Object_id =
l tables GROUP BY IC2.object_id ,IC2.index_id) tmp1 WHERE IncludedColumns IS NOT NULL ) tmp2 ON tmp2.object_id = I.object_id AND tmp2.index_id = I.index_id WHERE I.is_primary_key = 0 AND I.is_unique_constraint = 0
 

--AND I.Object_id = object_id('Person.Address') --Comment for all tables

 

--AND I.name = 'IX_Address_PostalCode' --comment for all indexes

 

تم تعديل هذه المشاركة بواسطة Black_Tiger_2007 في 2 سبتمبر 2014 في 19:37

الأفكار العبقرية تأتي بالتعب و المجهود و الإلهام فيها لا يتعدى 1% ( أديسون )

#8

ايه الكود ده يا باشا


مش فاهم حاجه


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