# پایگاه‌های داده > SQL Server > مدیریت دیتابیس (Database Administration) >  بدست آوردن فیلدهای یک جدول در Sql

## ali_behshahr

سلام من چه جوری می تونم با داشتن اسم Table تعداد فیلدها و نوع شون رو بدست بیارم
با Query زدن

----------


## hakan648

سلام


SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME='tableName'


SELECT o.Name                   as Table_Name
     , c.Name                   as Field_Name
     , t.Name                   as Data_Type
     , t.length                 as Length_Size
     , t.prec                   as Precision_
FROM syscolumns c 
     INNER JOIN sysobjects o ON o.id = c.id
     LEFT JOIN  systypes t on t.xtype = c.xtype  
WHERE o.type = 'U' 
ORDER BY o.Name, c.Name


اطلاعات بیشتر

----------


## ali_behshahr

سلام مرسی آقا چه جوری می تونم با داشتن نام دیتابیس فقط نام Table هاشو درارم

----------


## _alish_

-- Part 1
Declare @sqlstr nvarchar(200) 
-- Part 2
/* drop the temporary table if already exists */
If Object_Id('tempdb..#tblDBObjects') is Not Null
Drop table #tblDBObjects
/* create temporary table */
Create TABLE #tblDBObjects (
dbName sysname,
objName varchar(200),
objtype char(2)
)
-- Part 3
/*assign string value to variable */
Select @sqlstr = 'sp_msforeachdb "Insert #tblDBObjects select ""?"" as DBName, name, xtype From ?..sysobjects"'
/* execute SQL string */
Exec sp_executesql @sqlstr
-- Part 4
/* select from temp table */
Select * From #tblDBObjects Where objName like '%trn%'
                            --Where dbName like '%trn%'  
من این کد را برای بافتن ابجکت که در کدام دیتابیس است استفاده میکنم , شما هم راحت با Where clause دستور آخرش می تونی کارتو انجام بدی

----------


## _alish_

use YourDatabase
SELECT * FROM sysobjects WHERE xtype = 'U'

----------

