CREATE VIEW dbo.Columns AS SELECT o.name AS [table], c.name AS [column], t .name AS type, c.length, c.colstat AS [Key], t .variable, c.typestat, c.xscale AS scale, '@' + c.name + ' ' + t .name + CASE t .name WHEN 'datetime' THEN '' WHEN 'smalldatetime' THEN '' ELSE CASE c.xscale WHEN 0 THEN CASE t .variable WHEN 0 THEN '' ELSE '(' + STR(c.length, 4) + CASE c.xscale WHEN 0 THEN '' ELSE ',' + STR(c.xscale, 3) END + ')' END ELSE '(' + STR(c.length, 4) + CASE c.xscale WHEN 0 THEN '' ELSE ',' + STR(c.xscale, 3) END + ')' END END AS Parameter, '@' + c.name AS ParameterName FROM dbo.syscolumns c INNER JOIN dbo.systypes t ON c.xtype = t .xtype INNER JOIN dbo.sysobjects o ON c.id = o.id WHERE (t .name <> 'sysname')我用这个。
AS
SELECT o.name AS [table], c.name AS [column], t .name AS type, c.length,
c.colstat AS [Key], t .variable, c.typestat, c.xscale AS scale,
'@' + c.name + ' ' + t .name + CASE t .name WHEN 'datetime' THEN '' WHEN 'smalldatetime'
THEN '' ELSE CASE c.xscale WHEN 0 THEN CASE t .variable WHEN 0 THEN '' ELSE '('
+ STR(c.length, 4) + CASE c.xscale WHEN 0 THEN '' ELSE ',' + STR(c.xscale, 3)
END + ')' END ELSE '(' + STR(c.length, 4)
+ CASE c.xscale WHEN 0 THEN '' ELSE ',' + STR(c.xscale, 3)
END + ')' END END AS Parameter, '@' + c.name AS ParameterName
FROM dbo.syscolumns c INNER JOIN
dbo.systypes t ON c.xtype = t .xtype INNER JOIN
dbo.sysobjects o ON c.id = o.id
WHERE (t .name <> 'sysname')我用这个。