欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql数据库差异比较的PHP代码

程序员文章站 2023-03-24 21:14:36
当然可以去phpmyadmin里浏览一下。但是终究有遗漏吧。所以自己写了个,比较数据库差异的脚本(php的),方便一下自己。当然代码很简单,就不讲解了,贴代码: 复制代码...
当然可以去phpmyadmin里浏览一下。但是终究有遗漏吧。所以自己写了个,比较数据库差异的脚本(php的),方便一下自己。当然代码很简单,就不讲解了,贴代码:
复制代码 代码如下:

<?
mysql_connect('localhost','root','root');
mysql_select_db('tablea'); //标准的数据库
$q = mysql_query("show tables");
while($s = mysql_fetch_array($q)){
$name = $s[0];
$q1 = mysql_query("desc $name");
while ($s1 = mysql_fetch_array($q1)) {
$a[$name][] =$s1[0];
}
}
mysql_close();
mysql_connect('localhost','root','root');
mysql_select_db('tableb');//需要比较的数据库
$q2 = mysql_query("show tables");
while($s2 = mysql_fetch_array($q2)){
$name2= $s2[0];
$q3 = mysql_query("desc $name2");
while ($s3 = mysql_fetch_array($q3)) {
$aa[$name2][] =$s3[0];
}
}
mysql_close();
$f = $e = array();
$str = $fuhao ='';
foreach($a as $k=>$v){
if(!is_array($aa[$k])){
$e[] = $k;
}
else{
if(count($aa[$k]) <> count($v)){
foreach($v as $k1=>$v1){
if(!in_array($v1,$aa[$k])){
$f[$k][] = $v1;
}
}
}
}
}
echo "<pre>";
print_r($e);//缺少表
print_r($f);//缺少表的字段
?>