如何将这个变量填入临时表,多谢,急,在线等~~~

li190 2004-09-07 05:56:12
declare @ch varchar(2000)

select @ch ='11111111111-22222222222-33333333333-44444444444-'

create table #temp
(
sjh varchar(11)
)

while len(@ch) > 0
begin
select left(@ch,11)

select @ch = right(@ch, len(@ch)-12)
--insert into #temp select (@ch) --有问题,如何将这个变量填入临时表

select len(@ch)
end

select * from #temp
drop table #temp

错误提示:

(所影响的行数为 1 行)

服务器: 消息 8152,级别 16,状态 9,行 15
将截断字符串或二进制数据。
语句已终止。


服务器: 消息 8152,级别 16,状态 9,行 15
将截断字符串或二进制数据。
语句已终止。

(所影响的行数为 1 行)


(所影响的行数为 1 行)

服务器: 消息 8152,级别 16,状态 9,行 15
将截断字符串或二进制数据。
语句已终止。

...全文
101 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiangqing 2004-09-08
  • 打赏
  • 举报
回复
--換一個位置應該就可以了
--方法A
declare @ch varchar(2000)

select @ch ='11111111111-22222222222-33333333333-44444444444-'

create table #temp
(
sjh varchar(11)
)

while len(@ch) > 0
begin
select left(@ch,11)

insert into #temp select left(@ch,11)
--有问题,如何将这个变量填入临时表
select @ch = right(@ch, len(@ch)-12)

select len(@ch)
end

select * from #temp
drop table #temp

--方法B
declare @ch varchar(2000)

select @ch ='11111111111-22222222222-33333333333-44444444444-'

create table #temp
(
sjh varchar(11)
)

while len(@ch) > 0
begin
select left(@ch,11)

--insert into #temp select left(@ch,11)
insert into #temp select cast(@ch as varchar(11))
--有问题,如何将这个变量填入临时表
select @ch = right(@ch, len(@ch)-12)

select len(@ch)
end

select * from #temp
drop table #temp
li190 2004-09-08
  • 打赏
  • 举报
回复
多谢,给分的朋友都对了。我的意思就是把一个字符串按照每11位分到很多表格中,分别倒入别的表中,有些语句纯粹是测试用
ouyld 2004-09-07
  • 打赏
  • 举报
回复
yesterday2000 2004-09-07
  • 打赏
  • 举报
回复
declare @ch varchar(2000)

select @ch ='11111111111-22222222222-33333333333-44444444444-'

create table #temp
(
sjh varchar(11)
)

while len(@ch) > 0
begin
select left(@ch,11)

select @ch = right(@ch, len(@ch)-12)
insert into #temp select left(@ch,11)
--有问题,如何将这个变量填入临时表

select len(@ch)
end

select * from #temp
drop table #temp
lalakid 2004-09-07
  • 打赏
  • 举报
回复
搞不明白
select left(@ch,11)
select len(@ch)
都没有什么作用
你是想左边的11个还是右边的11个
zjmym 2004-09-07
  • 打赏
  • 举报
回复
最好把这句和上一句调换位置
zjmym 2004-09-07
  • 打赏
  • 举报
回复
把有问题句中的@ch 替换为left(@ch,11)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧