设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
Developers
›
Web 开发综合讨论
›
这么批量插入数据
返回列表
查看:
6472
|
回复:
8
这么批量插入数据
[复制链接]
tottyandbaty
tottyandbaty
当前离线
积分
16
IP卡
狗仔卡
发表于 2009-6-29 16:30:16
|
显示全部楼层
|
阅读模式
在数据库中如何一次性写入多条记录?要求:不用循环
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
Hex
Hex
当前离线
积分
50169
IP卡
狗仔卡
发表于 2009-6-29 16:48:23
|
显示全部楼层
SQL 语句能做到就能做到,否则就是做不到,呵呵。
回复
支持
反对
使用道具
举报
显身卡
tottyandbaty
tottyandbaty
当前离线
积分
16
IP卡
狗仔卡
楼主
|
发表于 2009-6-29 17:16:09
|
显示全部楼层
呵呵,我的意思是说用数据库的类来操作,该怎么写?
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50169
IP卡
狗仔卡
发表于 2009-6-29 18:44:12
|
显示全部楼层
AR 类貌似不支持批量写入数据。
AR 类就是一个 SQL 语句的简单封装,如果 AR 类支持,其内部也肯定是循环。
回复
支持
反对
使用道具
举报
显身卡
visvoy
visvoy
当前离线
积分
1342
IP卡
狗仔卡
发表于 2009-6-30 02:52:57
|
显示全部楼层
mysql只能一条一条插,mssql可以用分号一次插多个
回复
支持
反对
使用道具
举报
显身卡
ywjrg
ywjrg
当前离线
积分
12
IP卡
狗仔卡
发表于 2009-6-30 09:00:38
|
显示全部楼层
首先为何实现时不能用循环?
类的实现当然是处理一条sql,在具体实现时,才采用循环。
将sql放入数组中,然后使用循环遍历,在循环内再使用类实现单个sql的实现。
这样即可实现多条sql语句一起执行的效果。(其实本质还是单个执行)
回复
支持
反对
使用道具
举报
显身卡
幽蓝冰魄
幽蓝冰魄
当前离线
积分
1128
IP卡
狗仔卡
发表于 2011-5-30 11:44:45
|
显示全部楼层
据说只有循环。
回复
支持
反对
使用道具
举报
显身卡
ekliu
ekliu
当前离线
积分
259
IP卡
狗仔卡
发表于 2011-5-30 17:08:04
|
显示全部楼层
还要加事务!
回复
支持
反对
使用道具
举报
显身卡
aqw23
aqw23
当前离线
积分
454
IP卡
狗仔卡
发表于 2011-6-11 23:17:39
|
显示全部楼层
如果使用mysql可以循环数据,拼成sql语句:
insert into test(name) value('test1'),
('test2'),
('test3')
.......
('test2000');
这样可以批量插入,但是如果一性太多数据会把超时或内存不足,可以适当分批插入,如insert语句每次插入2000条,如果10万条数据,就分50次。这性程序是可以执行过来的。
再者如果是保存在xls的数据,可以转为csv格式的,通过mysql 的load data infile 函数操作,这很快,但数据库已存在几百万数据时,如果表有索引也会慢,如果没有索引,那速度还是很快的。
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页