php 将sql导入到数据库,php 导入sql到mysql数据库方法解析

本节内容:

php代码导入数据到mysql数据库。

问题描述:

1.初始化数据库时,如何把现有的.sql文件通过PHP 导入到MYSQL中?最好有这方面的代码或类。

2.PHP如何将excel 文件内容导入到Mysql相应的数据库中?

3.PHP如何对MYSQL数据库进行备份,生成.SQL文件放到制定的位置?

------解答--------

1、把现有的SQL文件导入数据库中,我写一段函数:

复制代码 代码示例:

------解答--------

第二个没有做过,关注此问题。

第三个问题:

最简单的,可以执行mysqldump命令。

复制代码 代码示例:

$database="";//备份的数据库名称

$user="";//数据库连接用户名

$password="";//数据库密码

$outputfile="";//导出的备份的SQL文件路径

system($mysqldump." -u".$user." -p".$password." ".$database." > ".$outputfile."");

?>

------解答--------

你的这些问题用mysql的客户端软件都可以实现,使用mysql cc 或者mysql front都可以实现你的要求,使用程序的话会非常麻烦

------解答--------

执行不就可以了

或者google php mysql class

adobd lite

------解答--------

good

------解答--------

对于1,3可以用mysql自带的命令行完成导入导出的工作.

假定mysql 用户名和密码为 root xxx,数据库为test

导入sql

mysql -hlocalhost -uroot -pxxx test < xxx.sql

导出sql

mysqldump -hlocalhost -uroot -pxxx database > xxx.sql

对于excel,标准的数据可以转成cvs格式的数据,然后再用phpmyadmin这样的工具导入

------解答--------

两种方法:

1.直接执行Mysql命令,让Mysql读取相应文件

2.用PHP读取文件,然后执行文件内容。

------解答--------

1,3很简单

2.

基本上在中文环境没有什么完美的解决方案

可以用DOM写个小程序做转换

------解答--------

是COM才对 =.=||

------解答--------

第二个问题,可以写一个csv文件导入就可以了

就可以把数据导入mysql数据库了

------解答--------

excel 出来那种 csv ... =_=||

数据简单还能用一下

------解答--------

支持下1。2楼的

2问题可以考虑mysql odbc

------解答--------

引用 7 楼 froole 的回复:

两种方法:

1.直接执行Mysql命令,让Mysql读取相应文件

2.用PHP读取文件,然后执行文件内容。

表达的简洁明了

------解答--------

上面的积分都好高,汗。

------解答--------

第二个问题是这样的,要批量导入数据库一些文件,之前ASP做时是通过asp把.xls 文件读出来,写进数据库。现在换成PHP,加上自己完全是个新手,想要做的是,把整理好的.xls文件通过PHP直接导入mysql,是不是这样不行的呀。那有啥好方法能实现批量导入呢?比如要导入一个学校所有学生的姓名学号之类的。

------解答--------

gingzai777 高手的方法正在试,是不是source 后面的地址必须是绝对地址呢?

------解答--------

引用 1 楼 gingzai777 的回复:

1、把现有的SQL文件导入数据库中,我写一段函数:

复制代码 代码示例:

$conn=mysql_connect("localhost","root","password");//指定数据库连接参数

function mysql_import($file,$database)//导入的函数,参数为SQL文件路径和导入的库名。

{

mysql_select_db($database);

mysql_query("source '".$file."';");

echo "导入".$file."文件到".$database."数据库完毕";

}

mysql_close($conn);

?>

+---------代码- --------------+

复制代码 代码示例:

function init_db(){

$file="../install/import.sql";

$conn=mysql_connect($this->dbhost,$this->dbuser,$this->dbpw) or die("数据库连接错误");

if(!$conn){

echo "数据库连接错误";

}

$db=mysql_select_db($this->dbname);

if($db){

mysql_query("DROP DATABASE `".$this->dbname."`");

}

mysql_query("setnames 'GBK'");

$creatdb=mysql_query("CREATE DATABASE `".$this->dbname."` DEFAULT CHARACTER SET gb2312 COLLATE gb2312_bin");//建立数据库

$mysql=mysql_select_db($this->dbname);

//if($mysql){

//echo "连接";

//}else{

//echo "未连接";

//}

//echo $file;

//$file="source '".$file."'";

//echo $file;

mysql_query("source '".$file."'");//初始化数据库

mysql_close($conn);

}

------解答--------

1、把现有的SQL文件导入数据库中,我写一段函数:

复制代码 代码示例:

$conn=mysql_connect("localhost","root","password");//指定数据库连接参数

function mysql_import($file,$database)//导入的函数,参数为SQL文件路径和导入的库名。

{

mysql_select_db($database);

mysql_query("source '".$file."';");

echo "导入".$file."文件到".$database."数据库完毕";

}

mysql_close($conn);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
导入shiftjis编码的csv文件MySQL数据库可以分为以下几个步骤: 1. 确定CSV文件的编码格式为shiftjis,可以使用文本编辑器打开csv文件,查看文件编码格式。 2. 创建一个MySQL表格,用来存储CSV文件的数据,包括字段名称和数据类型等信息。 3. 编写PHP脚本,读取CSV文件的数据,将数据逐行插入到MySQL表格中。 下面是一个可能的PHP脚本示例: ```php <?php //连接到MySQL数据库 $link = mysqli_connect('localhost', 'username', 'password', 'database_name'); if (!$link) { die('连接数据库失败: ' . mysqli_error()); } //设置MySQL字符集 mysqli_set_charset($link, 'utf8'); //打开CSV文件 $file = fopen('data.csv', 'r'); //逐行读取CSV文件,插入到MySQL数据库中 while (($data = fgetcsv($file)) !== false) { //将每行数据插入到MySQL表格中 $sql = "INSERT INTO table_name (field1, field2, field3) VALUES ('$data[0]', '$data[1]', '$data[2]')"; if (!mysqli_query($link, $sql)) { echo '插入数据失败: ' . mysqli_error($link); } } //关闭CSV文件MySQL连接 fclose($file); mysqli_close($link); ?> ``` 在导入CSV文件的过程中,可能会出现以下问题: 1. CSV文件编码格式不正确,导致数据乱码。 2. CSV文件中包含特殊字符,导致MySQL解析失败。 3. MySQL表格的字段类型与CSV文件中的数据类型不匹配。 4. CSV文件中的数据包含换行符,导致MySQL解析失败。 为了避免这些问题,可以在导入CSV文件之前,先进行数据清洗和格式转换等操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值