MS SQL - Проверка за тип?
1 отговора
93 прегледа
MS SQL - Проверка за тип?
Знае ли някой как може да се провери типът на една колона в таблица и може ли въобще без да описва цялата таблица да се извлече този тип?
Re: MS SQL - Проверка за тип?
SELECT
dbo.sysobjects.name AS objname,
dbo.syscolumns.name AS colname,
dbo.systypes.name as ColType,
dbo.syscolumns.length as ColLength,
dbo.syscolumns.xscale as ColScale --точност след запетаята за числовите
FROM
dbo.sysobjects INNER JOIN
dbo.syscolumns ON dbo.sysobjects.id = dbo.syscolumns.id
INNER JOIN dbo.systypes ON dbo.syscolumns.xtype=dbo.systypes.xtype
WHERE
dbo.sysobjects.xtype='u'
ORDER BY
dbo.sysobjects.id,
dbo.syscolumns.id,
dbo.syscolumns.colorder
Това ти вади всички колони във всички потребителски таблици (WHERE dbo.sysobjects.xtype='u'). Ако ти трябва конкретна колона в таблица, си прецизирай WHERE-то.
подобни таблици с описание има сигурно във всички серизни (а може би и в несериозните) бази данни. Аз поне съм ползвал и на Oracle-то.
dbo.sysobjects.name AS objname,
dbo.syscolumns.name AS colname,
dbo.systypes.name as ColType,
dbo.syscolumns.length as ColLength,
dbo.syscolumns.xscale as ColScale --точност след запетаята за числовите
FROM
dbo.sysobjects INNER JOIN
dbo.syscolumns ON dbo.sysobjects.id = dbo.syscolumns.id
INNER JOIN dbo.systypes ON dbo.syscolumns.xtype=dbo.systypes.xtype
WHERE
dbo.sysobjects.xtype='u'
ORDER BY
dbo.sysobjects.id,
dbo.syscolumns.id,
dbo.syscolumns.colorder
Това ти вади всички колони във всички потребителски таблици (WHERE dbo.sysobjects.xtype='u'). Ако ти трябва конкретна колона в таблица, си прецизирай WHERE-то.
подобни таблици с описание има сигурно във всички серизни (а може би и в несериозните) бази данни. Аз поне съм ползвал и на Oracle-то.