Maison  >  Article  >  base de données  >  交叉制表--检查列的计数值和长度并加入行数据(9)

交叉制表--检查列的计数值和长度并加入行数据(9)

WBOY
WBOYoriginal
2016-06-07 14:54:331134parcourir

交叉制表--检查列的计数值和长度并加入行数据(9) 交叉表 --除了需要证实列的计数值和名称长度,如果一切正常用户还需要填写#rownames表--check column countif (select count(*) from #colnames)1023begin drop table #colnames raiserror 51004 'distinct co

交叉制表--检查列的计数值和长度并加入行数据(9)
交叉表
--除了需要证实列的计数值和名称长度,如果一切正常用户还需要填写#rownames表
--check column count
if (select  count(*) from #colnames)>1023
begin
  drop table #colnames
  raiserror  51004 'distinct column count exceeded max of 1023'
  return -1
end
--verify colnames do not exceed max length
if (select max(datalength(rtrim(colname))-1) from #colnames)>29
begin
  drop table #colnames
   raiserror 51050 'column data length exceeded max of 30'
  return -1
end
--if all is ok ,continue to add #rownames data
select @chvexec='insert #rownames select distinct '+
  case @introwtype
  when 1 then 'convert(varchar(255),' else ''
  end +rtrim(@chrrowhead)+
  case @introwtype
  when 1 then ')'
  else ''
  end +'from '+@chrsource
--print @chvexec
exec(@chvexec)  
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn