thinkPHP--多数据库交互通信
下面是数据库备份的例子,从一个数据库中取数据复制到另一个数据库中.
1,在config.php中配置实用的数据库信息
//源数据库 "DB_DSN1" => "mysql://用户名:密码@数据库地址:端口/数据库名称" , //目标数据库 "DB_DSN2" => "mysql://用户名:密码@数据库地址:端口/数据库名称" , //例如: "DB_DSN1" => "mysql://user:123@127.0.0.1:3306/db1" ,2,使用方法
1) 从config.php取配置信息
$dsn1=C('DB_DSN1');
$dsn2=C("DB_DSN2");
2) 定义模型
$model=new Model();
3) 定义需要查询的源数据表
$table=$model->db("1")->table('查询的表名称');
$data=$table->where(查询条件)->select();
4) 将源数据库数据存入目标数据表
foreach ( $data as $val ){ $model ->db( "2" , $dsn2 )->query( "SET FOREIGN_KEY_CHECKS=0;" ); //保存 $rev = $model ->db( "2" , $dsn2 )->table( $table )->where( $mWhere )->save( $val ); //添加 //$rev=$model->db("2",$dsn2)->table($table)->add($val); } //上面的的操作将数据库又指向了目标数据库 //还可以使用这样的查询$model->db("2",$dsn2)->query("SET FOREIGN_KEY_CHECKS=0;");通过上面的4步可以使不同的数据库来回的切换.
查看更多关于thinkPHP--多数据库交互通信 - Thinkphp的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did6416