当前位置:Gxlcms > mysql > 交叉制表--检查列的计数值和长度并加入行数据(9)

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

时间:2021-07-01 10:21:17 帮助过:28人阅读

交叉制表--检查列的计数值和长度并加入行数据(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)  

人气教程排行