您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

ODBC to mySQL

2024/6/4 13:04:32发布17次查看
mysql|odbc
0?, :)
               ,odbc_field_name($result,$i+1)
               ,odbc_field_type($result,$i+1)
             );
      }else if(eregi(counter,odbc_field_type($result,$i+1))) {
        $s = sprintf(%s%s tinyint(%s) auto_increment primary key
               ,($i>0?, :)
               ,odbc_field_name($result,$i+1)
               ,odbc_field_len($result,$i+1)
             );
      }else {
        $s = sprintf(%s%s %s(%s)
               ,($i>0?, :)
               ,odbc_field_name($result,$i+1)
               ,odbc_field_type($result,$i+1)
               ,odbc_field_len($result,$i+1)
             );
      }
      $str .= $s;
    }
    $str .= );\n;
    fputs($fp,$str);
  }
  fclose($fp);
  echo 已产生了建表表文件$sql.sql。
;
  echo 请检查命令是否正确。若不需要重新建表,请将下面的if(1) 改为if(0)
;
  echo 不要改变表名,要增加字段请放在后面!;
  echo 确认后重新运行本程序!;
  odbc_close($odbc);
  exit;
}
if(1) { // 若不需要重新建表,请将if(1) 改为if(0)
  echo 开始建表...
;
  $mysql = mysql_connect();
  mysql_drop_db($sql);
  mysql_create_db($sql);
  mysql_select_db($sql);
  $fp = fopen($sql.sql,r);
  $buffer = fread($fp,filesize($sql.sql));
  fclose($fp);
  $ar = split(\n,$buffer);
  foreach($ar as $query) {
    if(trim($query) != ) {
//      echo $query
;
      mysql_query($query,$mysql);
    }
  }
}
// 从建表文件提取表信息信息
$info = array();
$s = file($sql.sql);
foreach($s as $value) {
  if(eregi(create +table +([a-z0-9_-]+) *[\(](.+)[\)],$value,$regs)) {
    $table = $regs[1];
    $info[$table] = array();
    $ar = split(,,$regs[2]);
    foreach($ar as $v) {
      sscanf($v,%s %s,$p,$p);
      if(eregi(double|count|int,$p)) { // 这些类型不需要加'',还有那些?
        $info[$table][] =;
      }else {
        $info[$table][] =';
      }
    }
  }
}
$mysql = mysql_connect($sql_host,$sql_name,$sql_pass);
mysql_select_db($sql);
echo
正在将数据从dsn向mysql转移...;
foreach($info as $key => $ar) {
  $query = select * from $key; // 生成odbc查询
  $result = odbc_do($odbc,$query);
  $mode = true;
  while($rs = odbc_fetch_array($result)) {
    $sql_query = insert into $key values (;
    for($i=0;$i      if($i > 0) $sql_query .= ,;
      $sql_query .= {$ar[$i]}{$rs[$i]}{$ar[$i]};
    }
    $sql_query .= );
    mysql_query($sql_query,$mysql);
  }
}
odbc_close($odbc);
echo
操作结束;
?>
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product