PDA

View Full Version : بازیابی ستون ها و نوع داده در اسکیوال



ha-sa-gh
جمعه 08 خرداد 1388, 21:34 عصر
سلام
من می خوام نام ستون ها و نو ع آنها را بازیابی کنم یعنی مثلا بگم که در فلان جدول چه ستونهایی به چه نوع داده هایی وجود داره ، با ی کوری این کارو انجام دادم اما آی دی نوع های داده رو درست ندارم مثلا نمی دونم که چطوری مشخص کنم که نوع داده من nvarchar(50) کوری من اینه لطفا اگه می تونید بگید چه تغییری باید بدم ...
SELECT
tables.name AS [Table],
columns.name AS [Column],
CASE
WHEN columns.system_type_id = 34
THEN 'byte[]'
WHEN columns.system_type_id = 35
THEN 'text'
WHEN columns.system_type_id = 36
THEN 'System.Guid'
WHEN columns.system_type_id = 48
THEN 'tinyint'
WHEN columns.system_type_id = 52
THEN 'short'
WHEN columns.system_type_id = 56
THEN 'int'
WHEN columns.system_type_id = 58
THEN 'System.DateTime'
WHEN columns.system_type_id = 59
THEN 'float'
WHEN columns.system_type_id = 60
THEN 'decimal'
WHEN columns.system_type_id = 61
THEN 'datetime'
WHEN columns.system_type_id = 62
THEN 'double'
WHEN columns.system_type_id = 98
THEN 'object'
WHEN columns.system_type_id = 99
THEN 'nvarchar'
WHEN columns.system_type_id = 104
THEN 'bit'
WHEN columns.system_type_id = 106
THEN 'decimal'
WHEN columns.system_type_id = 108
THEN 'decimal'
WHEN columns.system_type_id = 122
THEN 'decimal'
WHEN columns.system_type_id = 127
THEN 'long'
WHEN columns.system_type_id = 165
THEN 'byte[]'
WHEN columns.system_type_id = 167
THEN 'varchar'
WHEN columns.system_type_id = 173
THEN 'byte[]'
WHEN columns.system_type_id = 175
THEN 'string'
WHEN columns.system_type_id = 189
THEN 'long'
WHEN columns.system_type_id = 231
THEN 'nvarchar'
WHEN columns.system_type_id = 239
THEN 'string'
WHEN columns.system_type_id = 241
THEN 'string'
WHEN columns.system_type_id = 241
THEN 'nvarchar'
END AS [Type],
columns.is_nullable AS [Nullable]
FROM sys.tables tables INNER JOIN sys.schemas schemas ON (tables.schema_id = schemas.schema_id ) INNER JOIN sys.columns columns ON (columns.object_id = tables.object_id) WHERE tables.name <> 'sysdiagrams' AND tables.name <> 'dtproperties' and tables.name='tab_name'

ha-sa-gh
یک شنبه 10 خرداد 1388, 21:00 عصر
سلام
کسی جواب سوال منو نداد اما خودم چیزی و که می خواستم پیدا کردم ...
راه حل و می ذارم شاید به درد دیگران هم بخوره
SELECT column_name 'Column',
data_type'Type',
CHARacter_maximum_length 'Max'
FROM information_schema.columns
WHERE table_name = 'kkk'