(php)mysql如何把一个数据库里的表导入另一个数据库

想把以前的数据库aa替换掉,bb数据库做好了,只是aa里面有两张表数据很有用,通过php写代码一行行导怎么导
连接好数据库然后mysql_connect(...)
query(select * from ...)......
while(mysql_fetch_array($result)){
select_db(bb)
mysql_query(insert into....)
}
就是在while循环里选择别的数据库然后插入数据可行吗
最常用啥方便的方法呢?
最新回答
﹏素颜黛眉

2024-05-12 08:54:40

简单示例:

<?php

//设置编码格式

header("Content-type:text/html;charset=utf-8");


//链接数据库

$conn = mysql_connect("localhost","root","");


//选择要操作的数据库

mysql_select_db('act1',$conn);


//设置操作数据库编码格式

mysql_query("set names utf8");


//执行查询操作

$re= mysql_query("select user_name,phone from user");


//申明空数组,以便装数据

$records=array();


//循环将数据装入数组中

while($row=@mysql_fetch_row($re)){

$records[]=$row;

}


//选择要导入的数据库

mysql_select_db('act2',$conn);


//设置操作数据库编码格式

mysql_query("set names utf8");


//构造插入sql语句

$sql2="INSERT INTO user(user_name,phone) VALUES";


//循环记录集,插入新数据库的表中

foreach ($records as $ite){


//构造插入值字符串

$valuestr = "'".$ite[0]."',"."'".$ite[1]."'";


//给字符串最外边拼接括号

$sql2 .= "(".$valuestr."),";

}


//去除构造sql语句最后的逗号

$sql2 = substr($sql2,0,-1);


//执行插入操作

mysql_query($sql2);


//关闭mysql链接

mysql_close();

?>



数据库act1 user表数据:



插入到数据库act2  user表数据如下:

梦忆沐歌

2024-05-12 22:04:36

一行行的导也太麻烦了
如果表结构完全一样,直接执行一下insert into bb.table select * from aa.table where ..就可以了,如果只想保存某些信息那么insert into bb.table (column1,column2,...) select column1,column2,.. from aa.table where ..
你也可以从通过操作数据库
mysqldump -u xxx -p xxx aa table >dir/aatable.sql
然后
mysql>use bb;
mysql>source dir/aatable.sql