PDA

View Full Version : نیاز به query



havig
جمعه 13 شهریور 1383, 04:25 صبح
سلام
query می خواستم که با اون از وجود یا عدم وجود یک جدول مطلع شوم .
ممنون

Farhad.B.S
جمعه 13 شهریور 1383, 12:37 عصر
برای کسب اطلاعات کامل از جدول مورد نظر :

SELECT * FROM SYSOBJECTS WHERE name='TableName' AND type='U'

برای تشخیص بودن یا نبودن جدول مورد نظر :

IF EXISTS(SELECT id FROM SYSOBJECTS WHERE name='TableName' AND type='U')
PRINT 'Table exists'

AminSobati
جمعه 13 شهریور 1383, 15:29 عصر
دوستان عزیز،
مایکروسافت انجام SELECT به طور مستقیم روی جداول سیستمی رو توصیه نمیکنه مگر در موارد خاص. چون تضمینی نیست که درنسخه های بعدی SQL Server ساختار این جداول حفظ بشه. لذا استفاده از Viewهای سیستمی رو پیشنهاد میکنه چون در صورت تغییر ساختار زیرین SQL Server در ورژنهای بعد، این Viewها به روز میشوند و Applicationهای ما میتونن همیشه و در همه ورژنها به اونها اعتماد کنن. بنابراین از یک View سیستمی به نام INFORMATION_SCHEMA.TABLES استفاده میکنیم:



SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE Table_Type='BASE TABLE'
AND Table_Name='your table'

که در اینجا نام جدول مورد نظر رو با Your Table عوض میکنیم.
موفق باشید..