北京 php读写文件,sqlite怎么把数据导入csv文件?

用户投稿 188 0

北京关于“php读写sqlite”的问题,小编就整理了【2】个相关介绍“php读写sqlite”的解答:

北京sqlite怎么把数据导入csv文件?mysql> load data infile '/tmp/mytable.csv' into table mytable; load data infile肯定是最快的.

如果要用PHP来做,那可以考虑开启事务,批量插入,注意避免PHP执行超时. <?php

北京ignore_user_abort(true); //设置客户端断开连接时继续执行脚本

北京set_time_limit(0); //设置脚本最大执行时间,如果设置为0秒,则没有时间方面的限制.

//开启事务,批量插入

$db = new mysqli('127.0.0.1','user','pass','dbname',3306);

北京$db->query('SET AUTOCOMMIT=0');

$db->query('START TRANSACTION');

//导入CSV表格:CSV转数组

$fp = fopen('file.csv', 'r');

北京while( ($row = fgetcsv($fp)) !== FALSE ) {

北京//从文件指针中读入一行并解析CSV

$stmt = $db->prepare('INSERT INTO posts (id, post_title, post_content) VALUES (?,?,?)');

北京sqlite数据库写入数据慢,有什么办法吗?建议不要使用sqlite这种数据库频繁执行读写操作,效率低。

北京如果不换数据库的话提供一条思路,使用缓存:用户访问时的插入语句放在一个字符串集合列表中,列表数量达到一定级别 例如1000条时,之后再用事务插入数据,然后删除。我曾经用sqlite连续插入过十万级别的数据,使用事务比遍历可以将插入时间压缩到十分之一左右

北京到此,以上就是小编对于“php读写sqlite”的问题就介绍到这了,希望介绍关于“php读写sqlite”的【2】点解答对大家有用。

抱歉,评论功能暂时关闭!