سلام
با چه دستوری می تونم به Description فیلدهای یک Table دسترسی داشته باشم؟
Printable View
سلام
با چه دستوری می تونم به Description فیلدهای یک Table دسترسی داشته باشم؟
SELECT CAST([value] AS varchar(100))
FROM sysproperties
WHERE (id =
(SELECT id
FROM sysobjects
WHERE name = yourtablename))
AND smallid = yourcolumnindex
از راهنمائی شما خیلی ممنونم.
با کمی تغییر در جمله Select به نتیجه رسیدم.
بجای select id from sysobjects
از فیلد parent_obj استفاده کردم.
دوست عزیزم،
Microsoft دریافت اطلاعات به طور مستقیم از جداول سیستمی رو توصیه نمیکنه. چون تضمینی نیست که ساختار اونها در نسخه های بعدی ثابت باشه و کد نوشته شده توسط شما در آینده ممکنه با اشکال مواجه بشه. در عوض از فانکشنها، view یا spهای سیستمی استفاده کنین. برای هدف شما:
SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table', 'YOUR_TABLE_NAME', 'column', default)
موفق باشید
از راهنماییتون متشکرم .
فکر نمیکردم همچین تابعی وجود داشته باشه.
به هر حال ممنون. :)
موفق باشین :D
استاد ممنونم ولی می توانید در مورد این Level ها بیشتر توضیح دهید در help دیدم ولی متاسفانه متوجه نشدم
fn_listextendedproperty (
{ default | [ @name = ] 'property_name' | NULL }
, { default | [ @level0type = ] 'level0_object_type' | NULL }
, { default | [ @level0name = ] 'level0_object_name' | NULL }
, { default | [ @level1type = ] 'level1_object_type' | NULL }
, { default | [ @level1name = ] 'level1_object_name' | NULL }
, { default | [ @level2type = ] 'level2_object_type' | NULL }
, { default | [ @level2name = ] 'level2_object_name' | NULL }
)
باز هم ممنونم
دوست عزیزم متاسفانه من توضیحی بیشتر از BOL ندارم بدم، چون همه پارامترها هم تشریح شده. توصیه من به شما اینه که با این دستور کمی آزمایش و خطا کنین تا قابلیتهای اون و کاربردش براتون مفهوم پیدا کنه.
دیدن این مثال هم خالی از لطف نیست:
http://www.fawcette.com/Archives/pre...103/dd0103.asp
همچنین در BOL به این قسمت رجوع کنین:
Creating and Maintaining Databases > Using Extended Properties