ورود

View Full Version : برگرداندن نام جداول



javad3151
شنبه 02 مهر 1384, 12:48 عصر
سلام
من میخوام برای برنامه ام یه گزارشگیری داینامیک پیشرفته طراحی کنم ، میخوام در یک combo box نام جداول رو نشون بدم (در asp.net) برای بدست آوردن نام جداول چه دستور sql باید بنویسم؟؟

m-khorsandi
شنبه 02 مهر 1384, 13:22 عصر
برای به دست آوردن نام جداول میتونید از دو راه استفاده کنید
1- استفاده از INFORMATION_SCHEMA.TABLE View استفاده کنید. به غیر از اینکه استفاده از این
View رو مایکروسافت توصیه میکنه، اطلاعات به دست آمده خونایی بالایی داره.

2- از جداول سیستمی هم میتونید استفاده کنید مانند sysobjects ، که اونها مشکلات خاص خود رو دارند.

Achchan
شنبه 02 مهر 1384, 15:40 عصر
Hi,
I think that showing actual table names may lead to confusing users.It doesn't mean perfectly for end-users for example: If you had a table named tab_conn_inf (This is a real case on one of my servers,I did not desing it but I can't see a major problem with that too)
Personally I think it is better to show a list of verbose and meaningful names to end_users which may map to one or many tables and views in actual database.
-Best wishes and feel free to mail me: baronc_rampantc@yahoo.ca

m-khorsandi
شنبه 02 مهر 1384, 17:06 عصر
با دوستمون Achchanموافقم،
نام جداول و فیلدها ممکن هست برای کاربران عادی بی معنی باشه، به همین خاطر پیشنهاد میکنم جداولی رو طراحی
کنید که بتونید نام معنی داری از جدول رو در اون قرار بدید (همینطور برای فیلدها) و به کاربر رکوردهای این جداول رو نمایش
بدید و در پشت سر از جداول اصلی استفاده کنید.

javad3151
یک شنبه 03 مهر 1384, 12:24 عصر
سلام
حرف شما کاملا صحیحه اما چند مشکل:
- من دقیقا متوجه نشدم که چطور نام تیبل ها رو بخونم
- آیا می توان description فیلدها رو هم خوند (در گزارشگیری از اونها استفاده کرد) و باز هم آیا برای فیلدها هم می توان description تعریف کرد و اونها رو خوند؟؟؟؟
ببخشید که پرحرفی کردم

m-khorsandi
یک شنبه 03 مهر 1384, 12:38 عصر
خوب شما میتونید جدولی رو برای نام جداول در نظر بگیرید و اطلاعاتی مانند نام جدول و نامی که به درد کاربر میخورد رو
در اون قرار بدی (و فیلدهایی که به کار برنامه ات میاد).

مثال:


Select * From Information_Schema.Table

javad3151
دوشنبه 04 مهر 1384, 09:25 صبح
وقتی فرمان فوق رو در query analyzer اجرا می کنی خطای زیر رو میده:

Server: Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'Table'.

m-khorsandi
دوشنبه 04 مهر 1384, 11:23 صبح
Select * From Information_Schema.Tables

javad3151
سه شنبه 05 مهر 1384, 07:51 صبح
خیلی ممنون.
درست شد.

mehrdadpro
جمعه 08 خرداد 1388, 10:56 صبح
آقا برای من خطای زیر رو میده
Invalid object name 'Information_Schema.Tables'.