php 导入.sql文件到mysql数据库

 代码如下 复制代码

set_time_limit(0); //设置超时时间为0,表示一直执行。当php在safe mode模式下无效,此时可能会导致导入超时,此时需要分段导入
$db =  new mysql($location['host'],$location['hostname'],$location['hostpass'],$location['table'],"utf8",$location['ztime']);  
$fp = @fopen($sql, "r") or die("不能打开sql文件 $sql");//打开文件
while($sql=getnextsql()){
    mysql_query($sql);
}
//echo "用户数据导入完成!";
fclose($fp) or die("can't close file $file_name");//关闭文件

//从文件中逐条取sql
function getnextsql() {
    global $fp;
    $sql="";
    while ($line = @fgets($fp, 40960)) {
        $line = trim($line);
        //以下三句在高版本php中不需要,在部分低版本中也许需要修改
        //$line = str_replace("\\","\",$line);
        //$line = str_replace("'","'",$line);
        //$line = str_replace("\r\n",chr(13).chr(10),$line);
        //$line = stripcslashes($line);
        if (strlen($line)>1) {
            if ($line[0]=="-" && $line[1]=="-") {
                continue;
            }
        }
        $sql.=$line.chr(13).chr(10);
        if (strlen($line)>0){
            if ($line[strlen($line)-1]==";"){
                break;
            }
        }
    }
    return $sql;
}
?>

 

时间: 2024-07-30 08:39:16

php 导入.sql文件到mysql数据库的相关文章

php导入excel文件到mysql数据库的方法

 这篇文章主要介绍了php导入excel文件到mysql数据库的方法,分析了phpexcel类操作excel文件的技巧及导入数据库的方法,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了php导入excel文件到mysql数据库的方法.分享给大家供大家参考.具体分析如下: php导入excel文件入mysql数据库我们是需一借助一个phpexcel类文件了,有了这个类文件我们就可以快速简单的导入excel到mysql数据库中,这里就来举个例子给大家说明一下具体用法. 导入前我们

php导入excel文件到mysql数据库的方法_php技巧

本文实例讲述了php导入excel文件到mysql数据库的方法.分享给大家供大家参考.具体分析如下: php导入excel文件入mysql数据库我们是需一借助一个phpexcel类文件了,有了这个类文件我们就可以快速简单的导入excel到mysql数据库中,这里就来举个例子给大家说明一下具体用法. 导入前我们需要先准备一个数据库,sql语句代码如下: 复制代码 代码如下: /* Navicat MySQL Data Transfer   Source Server         : local

如何批量导入sql文件到mysql

问题描述 如何批量导入sql文件到mysql 因为要恢复网站备份的数据,结果发现有很多sql文件,一个一个导入太麻烦了,phpmyadmin,navicate for mysql, mysql 的 source 命令一次就只能导入一个sql文件,网上有说建一个sql文件,在里面把要导入的sql文件名写进去再用source 命令导入,经测试没用的:有没有有其他方法 解决方案 将你的SQL脚本上传到服务器中,咋服务器中使用命令行方式执行,可以批量执行 解决方案二: 1.自己写一断PHP程序循环导入

php导入excel文件入mysql数据库例子

导入前我们需要先准备一个数据库,sql语句代码  代码如下 复制代码 /* Navicat MySQL Data Transfer Source Server         : www.111cn.net localhost Source Server Version : 50133 Source Host           : localhost:3306 Source Database       : test Target Server Type    : MYSQL Target S

Mysql导入.sql文件出错

问题描述 Mysql导入.sql文件出错 mysql导入sql文件时老是提示错误,请问各位高手该怎么解决? 解决方案 那最长的串右侧没有单引号 '注意用括起来' 解决方案二: 单引号要成双成对.一一对应. 否则,SQL语句可能会因为错误的单引号导致语法错误. 解决方案三: 中文字符串后面缺少单引号 解决方案四: sql文件格式有问题,估计引号什么的被中文字符串影响了

mysql 备份还原-navicat for mysql 导入导出sql文件 备份还原 数据库的原理 相关指令大概是怎样的?

问题描述 navicat for mysql 导入导出sql文件 备份还原 数据库的原理 相关指令大概是怎样的? 本地不用安装mysql也可以使用?不用配置环境变量?自己用mysqldump备份要安装mysql还有配环境,求高人指点

MySQL导入.sql文件及常用命令

MySQL导入.sql文件及常用命令 转自:http://blog.csdn.net/muziduoxi/article/details/6091202  在MySQL Qurey   Brower中直接导入*.sql脚本,是不能一次执行多条sql命令的,在mysql中执行sql文件的命令: mysql> source   d:/myprogram/database/db.sql; 另附mysql常用命令: 一) 连接MYSQL:     格式: mysql -h主机地址 -u用户名 -p用户密

mysql导入sql文件过大或连接超时的解决办法

原文:mysql导入sql文件过大或连接超时的解决办法      前段时间出差在现场开发的时候,导入数据库老是出问题.最后发现了一个神奇sql语句交给实施,只要导入出错就把如下语句执行就可以了.至今屡试不爽. set global max_allowed_packet=100 000 000; set global net_buffer_length=100000; SET GLOBAL interactive_timeout=28800 000; SET GLOBAL wait_timeout

mysql导入.sql文件的问题

问题描述 mysql导入.sql文件的问题 将一个.sql文件编辑,文本中最后加入下面这段代码(部分代码)后,导入这个sql文件就会报错(这段新加代码未能导入) 原因是什么?还有就是应该如何解决这个问题.多谢了! # # Function "fun_getChildList" # DROP FUNCTION IF EXISTS `fun_getChildList`; CREATE FUNCTION `fun_getChildList`(`type` int,`areaid` int,`