$config = [
'hotfix' => [
'host'=>'',
'port'=>'',
'account'=>'',
'password'=>'',
'database'=>'',
],
'release' => [
'host'=>'',
'port'=>'',
'account'=>'',
'password'=>'',
'database'=>'',
],
'master' => [
'host'=>'',
'port'=>'',
'account'=>'',
'password'=>'',
'database'=>'',
],
]; function display($compare1,$compare2){
$html = '<title>数据库对比脚本</title>';
$html .= '<form method="GET">
原数据库:
<select name="db1">
<option value="hotfix"'.($compare1=='hotfix'?'selected="selected"':"").'>开发站</option>
<option value="release"'.($compare1=='release'?'selected="selected"':"").'>测试站</option>
<option value="master"'.($compare1=='master'?'selected="selected"':"").'>正式站</option>
</select>
现数据库:
<select name="db2">
<option value="hotfix"'.($compare2=='hotfix'?'selected="selected"':"").'>开发站</option>
<option value="release"'.($compare2=='release'?'selected="selected"':"").'>测试站</option>
<option value="master"'.($compare2=='master'?'selected="selected"':"").'>正式站</option>
</select>
<input type="submit" value="对比" /><br><br>';
$html .= '相比原数据库,现数据库:<br>';
return $html;
} function databaseData($config,$compare){
$aaaaa = mysql_connect(
$config[$compare]['host'].':'.$config[$compare]['port'],
$config[$compare]['account'],
$config[$compare]['password']
);
mysql_select_db($config[$compare]['database']); //标准的数据库
$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]['field'][] =$s1[0];
$a[$name]['format'][] =$s1[1];
}
}
mysql_close();
return $a;
} function dataCompare($a,$aa){
$f = $e = array();
$str = $fuhao ='';
foreach($a as $k=>$v){
if(!is_array($aa[$k])){
$e[] = $k;
echo "<div style='background:#fdd'>缺少表:<font color='blue'>$k</font></div>";
}
else{
foreach($v['field'] as $k1=>$v1){
if(!in_array($v1,$aa[$k]['field'])){
$f[$k]['field'][] = $v1;
echo "<div style='background:#ff9'>表<font color='blue'>".$k."</font>缺少字段: <font color='red'>".$v1."</font>"."</div>";
}else{
if(!in_array($v['format'][$k1],$aa[$k]['format'])){
$f[$k]['format'][] = $v['format'][$k1];
echo "<div style='background:#ddd'>表<font color='blue'>".$k."</font>字段 <font color='red'>".$v1."</font>修改为<font color='green'>".$v['format'][$k1]."</font>"."</div>";
}
}
}
}
}
} $compareOne = isset($_GET['db1'])?$_GET['db1']:'';
$compareTwo = isset($_GET['db2'])?$_GET['db2']:'';
echo display($compareOne,$compareTwo);
$a = databaseData($config,$compareOne);
$aa = databaseData($config,$compareTwo);
dataCompare($a,$aa);

最新文章

  1. Swift 语法
  2. Saying that Java is nice because it works on every OS is like saying that anal sex is nice because it works on every gender.
  3. cefsharp在xp上运行
  4. 局域网无法访问vmware虚拟机WEB服务器解决办法
  5. python图像识别--验证码
  6. ThinkPHP中的模型
  7. linux top动态查看进程信息
  8. js ie8不支持项总结
  9. JBPM——MyEclipse开发环境的搭建
  10. 创建 overlay 网络 - 每天5分钟玩转 Docker 容器技术(50)
  11. pygame事件之——控制物体(飞机)的移动
  12. 编译问题:&#39;&lt;invalid-global-code&gt;&#39; does not contain a definition for &#39;Store&#39; and no extension method &#39;XXX&#39; accepting a first argument of type &#39;&lt;invalid-global-code&gt;&#39; could be found
  13. [转]Understand QoS at OpenSwitch
  14. C# yield return; yield break;
  15. pthread_cond_wait() 函数的使用
  16. LaTeX简历模板
  17. APR欺骗
  18. 一款标注颜色,距离的小软件 markman
  19. 【C#/WPF】图片的切割/切图/裁剪图片
  20. rpm源码安装mysql

热门文章

  1. JSON.parse()的异常怎么处理;
  2. Spring MVC 简单介绍
  3. 学习ExtjsFor.NET(第二个案例-Array的Every方法)
  4. sql server 规则
  5. win7(32 bit) 环境下点击打印预览报错解决办法
  6. Css元素布局定位
  7. IOS8 设置TableView Separatorinset 分割线从边框顶端开始
  8. C++ try catch 捕获空指针异常,数组越界异常
  9. 【LeetCode题意分析&amp;解答】36. Valid Sudoku
  10. css多行文本垂直居中问题研究