قم بإدراج الكائنات الأساسية المستخدمة في وظيفة SQL Server

dba.stackexchange https://dba.stackexchange.com/questions/101568

  •  26-09-2020
  •  | 
  •  

سؤال

أستخدم ما يلي للحصول على قائمة بالكائنات الأساسية في العرض:

SELECT view_name, Table_Name
FROM INFORMATION_SCHEMA.VIEW_TABLE_USAGE
WHERE View_Name IN 
    (
      'View1', 'View2'
    )
ORDER BY view_name, table_name

لم أتمكن من العثور على أي جدول نظام يوفر الكائنات الأساسية في إحدى الوظائف.هل لدى أي شخص أي فكرة عن كيفية سحب هذه المعلومات بسهولة؟أنا أتعامل مع العديد من الوظائف مع كائنات قاعدة بيانات أساسية متعددة وأريد تجنب الجهد اليدوي للحصول على هذه المعلومات.شكرًا!

هل كانت مفيدة؟

المحلول

href="https://msdn.microsoft.com/en-us/library/ms189487.aspx" rel="nofollow"> sp_depends سيعطيك قائمة الكائنات المعالين في جميع الإصدارات الحاليةمن SQL Server ولكن يتم سرد حسب الانتهاء.

href="https://msdn.microsoft.com/en-us/library/ms34552.aspx" rel="nofollow"> هنا مقالة MSDN مع وسيلة للعثور على كائنات مرجعيةوظيفة ومع تعديلات صغيرة يمكنك الحصول على قائمة الكائن المشار إليها بواسطة وظيفة:

giveacodicetagpre.

وكافأة: http://beyondrelational.com/modules/2/blogs/28/posts/10399/tsql-lab-9-how-to-find-the-تصنيع سلسلة من A-A-A-A- A- A.ASPX

نصائح أخرى

* يرجى القراءة *

كما هو مذكور في إجابةSpörri أعلاه، sys.sql_dependencies تم إهماله.


تبعيات sys.sql_(Transact-SQL) :

ستتم إزالة هذه الميزة في إصدار مستقبلي من Microsoft SQL Server.تجنب استخدام هذه الميزة في أعمال التطوير الجديدة ، والتخطيط لتعديل التطبيقات التي تستخدم هذه الميزة حاليًا.استخدم sys.sql_expression_dependencies بدلاً من ذلك.


لقد لاحظت أنه من بين 3 وظائف، كان معرف كائن دالة واحدة مفقودًا في الجدول المهمل sys.sql_dependencies, ، ووجدت كل شيء في sys.sql_expression_dependencies الجدول بدلا من ذلك.لذا استخدم ما يلي للحصول على التبعيات:

select * 
from sys.sql_expression_dependencies
where referencing_id =  object_id('schema.object_name') 
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى dba.stackexchange
scroll top