select convert(char(35),'@' + syscolumns.name)
+ rtrim(systypes.name)
+ case when rtrim(systypes.name) in ('binary','char','nchar','nvarchar','varbinary','varchar') then '(' + rtrim(convert(char(4),syscolumns.length)) + ')'
when rtrim(systypes.name) not in ('binary','char','nchar','nvarchar','varbinary','varchar') then ' '
end
+ case when colorder < @maxcol then ','
when colorder = @maxcol then ' '
end
/注释行/
as type,
colorder
from syscolumns
join systypes on syscolumns.xtype = systypes.xtype
where id = @TableID and systypes.name <> 'sysname'
请问上述代码在执行过程中,在“/注释行/”上方,是不是在几个连接符之间以一定的规则找到一个值,并将他送给type呀?最好能给出详细地解释。
---------------------------------------------------------------
将字符串进行连接而已
---------------------------------------------------------------
在查询分析其运行一下不就明白了吗?
这个类型考虑不全的,numeric等带精度的类型的不到正确的类型。