有如下字符串:(下列字符间相连,没有空格,为了方便观看,手工弄的空格)
字符串格式为
用户名,密码$站点名|包编号1#包编号2#包编号3|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号4#包编号5#包编号5|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号7#包编号8#包编号9|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号10#包编号11#包编号12|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&%
用户名,密码$站点名|包编号13#包编号14#包编号15|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号16#包编号17#包编号18|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号19#包编号20#包编号21|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号22#包编号23#包编号24|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&%
用户名,密码$站点名|包编号25#包编号26#包编号27|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号28#包编号29#包编号30|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号31#包编号32#包编号33|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号34#包编号34#包编号36|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
用户名,密码$站点名|包编号37#包编号38#包编号39|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&%
$站点名|包编号40#包编号41#包编号42|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号43#包编号44#包编号45|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
$站点名|包编号46#包编号47#包编号48|面值总额#现金收支#ivt转账#兑奖金额#pos转账#欠款#还款&
*/解释:
上面是多个文件中的数据拼接起来的。
以“%”相隔的是不同文件中的数据,上面只有4个文件,故只有3个“%”,若有n个文件,那么会有(n-1)个“%”。
目的:
得到用户名(varchar),站点编号(varchar),包编号(varchar),面值总额(bigint),现金收支(bigint),ivt转账(bigint),兑奖金额(bigint),pos转账(bigint),欠款(bigint),还款(bigint),插入到表中。
即可以执行下列语句
INSERT INTO 表名(用户名列,站点编号列,包编号列,面值总额列,现金收支列,ivt转账列,兑奖金额列,pos转账列,欠款列,还款列) VALUES(用户名,站点编号,包编号1,面值总额,现金收支,ivt转账,兑奖金额,pos转账,欠款,还款)
INSERT INTO 表名(用户名列,站点编号列,包编号列,面值总额列,现金收支列,ivt转账列,兑奖金额列,pos转账列,欠款列,还款列) VALUES(用户名,站点编号,包编号2,面值总额,现金收支,ivt转账,兑奖金额,pos转账,欠款,还款)
.
.
.
INSERT INTO 表名(用户名列,站点编号列,包编号列,面值总额列,现金收支列,ivt转账列,兑奖金额列,pos转账列,欠款列,还款列) VALUES(用户名,站点编号,包编号n,面值总额,现金收支,ivt转账,兑奖金额,pos转账,欠款,还款)
注意:文件个数不确定,可能1个,可能2个,可能n个(0个就不用判断和处理了,在.java中处理)
每个站点下包编号个数不确定。上面每个站点都有3个包编号。实际可能1个,2个,n个(0个就不用判断了)
是不是可以写个字符串截取的函数,在存储过程中多次调用它啊?
字符串调用函数 2个参数,n个不固定返回值。
遇到问题:
这是以前的遗留问题。if-else即嵌套太多了,弄得几个我就晕了。
希望有好心人帮忙!感激不尽啊!第三次发帖,不知道给多少分。分不够的话,还可以再加啊! 要联系我的话,可以加我QQ:872082002 或邮箱:ylchou@qq.com