日期:2014-05-18  浏览次数:20582 次

如何把数据插入到同一行中?
遇到一个问题。
有一个表table有五列col1,col2,col3,col4,col5.其中col1和col5可以为空。
现向这个表中插入数据,但是插入数据是以流水方式插入,每次只插入一个数值,连续向col2,col3,col4列中插入值,而且连续插入三个值后会自动换到下一行,再从col2开始写入数值。

例如:

写入第一个数时是这样的

col1   col2   col3   col4   col5
            2        
写入第二个数时是这样的

col1   col2   col3   col4   col5
            2         3          
写入第三个数时是这样的

col1   col2   col3   col4   col5
            2         3           4
写入第四个数时是这样的

col1   col2   col3   col4   col5
            2         3           4
            5      
写入第五个数时是这样的

col1   col2   col3   col4   col5
            2         3           4
            5         6      
写入第六个数时是这样的

col1   col2   col3   col4   col5
            2         3           4
            5         6           7

而且每次写入的数值都不确定,如何实现这种操作?

------解决方案--------------------
我觉得你这是一个表设计的错误。你不要根据查询显示的情况来设计表。查询显示的样式是可以调整的,但是数据表的设计必须合理。
建议把数据表设计成
T1(id int, col1 int, col5 int)
T2(id int, col2 int)
col2,col3,col4都可以放在T2中,查询显示成
col1 col2 col3 col4 col5
这样可以很好解决。
------解决方案--------------------
赞成楼上的说法,重新调整表结构
------解决方案--------------------
赞成楼上的说法,重新调整表结构

用高级语言来实现这个功能比较容易些,希望接受调整表结构的建议.