用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1845|回复: 9
收起左侧

[HELP] codeigniter中的循环插入数据库

[复制链接]
发表于 2015-7-24 09:22:37 | 显示全部楼层 |阅读模式
如何实现自动循环插入
发表于 2015-7-24 09:35:46 | 显示全部楼层
   我所知的就是用foreach(){insert……} 。                                                                                                                                                     我遇到了一个问题,也是数据库的。我想实现未知层数的级联查询,已知层数比如说两层的级联查询可以实现,但未知层数的查询怎么实现呢?eg.一个箱子里有3个红色的,5个黑色的小一号的箱子,每个红色的箱子里有2个白色的球和4个白色的小箱子,每个白色的小箱子里有3个紫色的球和1个蓝色的小箱子…………每个黑色的箱子里有2个粉色的球和6个绿色的箱子……,最后求这个大箱子里有多少种球,每种球多少个。。。。希望有前辈可以一起指导下。
 楼主| 发表于 2015-7-24 09:40:17 | 显示全部楼层
这个应该看要求吧,我现在写的for循环。是可以实现功能的,但是和我要的逻辑不一样。求路过的指点一下。就是在一个控制器里面实现一种递归的理念
 楼主| 发表于 2015-7-24 09:45:05 | 显示全部楼层
对啊,我是刚刚上班,好多要学的。以后多交流啊。加个QQ吧
发表于 2015-7-24 09:46:07 | 显示全部楼层
放肆的青春 发表于 2015-7-24 09:45
对啊,我是刚刚上班,好多要学的。以后多交流啊。加个QQ吧

在论坛交流就好了,我也是新手。
发表于 2015-7-24 15:12:16 | 显示全部楼层
greedefoxes 发表于 2015-7-24 09:35
我所知的就是用foreach(){insert……} 。                                                            ...

你是要新增的代碼?還是資料表?
  1. id  uid  type  color  amount
  2. 1   0    box
  3. 2   1    box   red
  4. 3   1    box   red
  5. 4   1    box   red
  6. 5   1    box   black
  7. 6   1    box   black
  8. 7   1    box   black
  9. 8   1    box   black
  10. 9   1    box   black
  11. 10  2    ball  white  2
  12. 12  3    ball  white  2
  13. 13  4    ball  white  2
  14. 14  2    box   white
  15. 15  2    box   white
  16. 16  2    box   white
  17. 17  2    box   white
  18. 18  3    box   white
  19. 19  3    box   white
  20. 20  3    box   white
  21. 21  3    box   white
  22. 22  4    box   white
  23. 23  4    box   white
  24. 24  4    box   white
  25. 25  4    box   white
  26. 26  14   ball  purple 3
  27. 27  15   ball  purple 3
  28. 28  16   ball  purple 3
  29. 29  17   ball  purple 3
  30. 30  18   ball  purple 3
  31. 31  19   ball  purple 3
  32. 32  20   ball  purple 3
  33. 33  21   ball  purple 3
  34. 34  22   ball  purple 3
  35. 35  23   ball  purple 3
  36. 36  24   ball  purple 3
  37. 37  25   ball  purple 3
  38. 38  14   box   blue
  39. 39  15   box   blue
  40. 40  16   box   blue
  41. 41  17   box   blue
  42. 42  18   box   blue
  43. 43  19   box   blue
  44. 44  20   box   blue
  45. 45  21   box   blue
  46. 46  22   box   blue
  47. 47  23   box   blue
  48. 48  24   box   blue
  49. 49  25   box   blue
  50. 50  5    ball  pink   2
  51. 51  6    ball  pink   2
  52. 52  7    ball  pink   2
  53. 53  8    ball  pink   2
  54. 54  9    ball  pink   2
  55. 55  5    box   green
  56. 56  5    box   green
  57. 57  5    box   green
  58. 58  5    box   green
  59. 59  5    box   green
  60. 60  5    box   green
  61. 61  6    box   green
  62. 62  6    box   green
  63. 63  6    box   green
  64. 64  6    box   green
  65. 65  6    box   green
  66. 66  6    box   green
  67. 67  7    box   green
  68. 68  7    box   green
  69. 69  7    box   green
  70. 70  7    box   green
  71. 71  7    box   green
  72. 72  7    box   green
  73. 73  8    box   green
  74. 74  8    box   green
  75. 75  8    box   green
  76. 76  8    box   green
  77. 77  8    box   green
  78. 78  8    box   green
  79. 79  9    box   green
  80. 80  9    box   green
  81. 81  9    box   green
  82. 82  9    box   green
  83. 83  9    box   green
  84. 84  9    box   green
复制代码
发表于 2015-7-24 15:55:44 | 显示全部楼层
Closer 发表于 2015-7-24 15:12
你是要新增的代碼?還是資料表?

  我例子中提到的箱子和球是把我实际的问题给模型化了,实属我表达能力有限,还麻烦你帮我把表结构和表数据都一一列出来了,谢谢{:soso_e177:}。其实我想请教关于数据库递归查询算法的问题,目的最后得到数组,KEY是所有球的种类,Value是每种球的个数。就是我不知道这个箱子到底有多少层 child 箱子,如果用C语言实现,会用到while(存在child箱子),然后写一个函数查询出每个箱子里面的球的数量和child箱子的数量,return球的数量和child箱子的数量。。。不行,智商很着急,我用C也不太会实现。。。总之,这个问题对我来说很难。。




发表于 2015-7-31 12:30:04 | 显示全部楼层
insert_batch

本版积分规则