<del id="7msxa"><table id="7msxa"><strong id="7msxa"></strong></table></del><legend id="7msxa"></legend>

<tbody id="7msxa"></tbody>
  • <ol id="7msxa"></ol><th id="7msxa"><track id="7msxa"><rt id="7msxa"></rt></track></th>
    1. <dd id="7msxa"></dd>
    2. 首頁 > 數據庫 > MySQL > 正文

      Foxpro到MySQL的數據轉換技術介紹

      2019-09-08 23:26:27
      字體:
      來源:轉載
      供稿:網友
        傳統的 C/S 模式的編程環境下,Visual Foxpro 曾經是風靡一時的數據庫類型,然而,在輕型的數據庫級別里,MySQL 具有遠比 VFP 要好得多的特性,最大的好處當然是跨平臺特性。在本文介紹的這個應用里(這是一個實際的例子),我們把在 VFP 環境下頻繁更新的數據,通過 PHP 的 ADODB 接口同步到 MySQL 數據庫,并在入庫之前,對其中的文本的關鍵字打上標記,使之關聯到對應的連接。

        下面列出程序片段。

        conv.php
        $ADODB_PATH="C:/Apache/PHP/PEAR/ADODB";
        include("$ADODB_PATH/adodb.inc.php"); // ADODB 的類
        include("$ADODB_PATH/db_mysql.php"); // 采用了 VBB 中的類
        $conn = &ADONewConnection('vfp'); // 指定 ADODB 的連接類型為 VFP。
        $conn->PConnect('gn','sa',''); // gn 是建立在本機上的ODBC 系統 DSN 名字。
        function parse_keyword ( $oldmem ) {
        $ADODB_CACHE_DIR = 'c:/temp'; // Cache 的目錄
        $ADODB_FETCH_MODE = ADODB_FETCH_NUM;
        $mysql_conn = &ADONewConnection('mysql'); // 指定 ADODB 的連接類型為 mysql
        $mysql_conn->PConnect('localhost','username','password','db_name');
        $sql = "select keyword,url from KEYWORD ";
        $rs = $mysql_conn->CacheExecute(1500,$sql);
        // 對 KEYWORD 的查找采用 1500 秒的緩沖。
        if (!$rs) print $mysql_conn->ErrorMsg();
        $all_col=$rs->GetArray();
        $rs->Close();
        $keyword= array();
        $url = array();
        for ( $i = 0; $i< count($all_col); $i++ ) {
        $keyword[$i] = $all_col[$i][0];
        $url[$i] = $all_col[$i][1];
        }
        $newmem=str_replace($keyword,$url,$oldmem);
        // 這是本函數里最大的功能,數組替換文本。
        // 一個語句解決一段文本里所有關鍵字的替換。
        $mysql_conn->Disconnect();
        $mysql_conn->Close();
        return $newmem;
        }
        $DB_Site = new DB_Sql;
        $DB_Site->connect();
        echo "Processing Table ...n";
        $sql = " SELECT max(seq) as seq FROM mysql_table WHERE type=0200";
        $seqinfo = $DB_Site->query_first($sql);
        $seq = $seqinfo[seq];// 取出目標數據庫中最大的 seq 值。
        $sql = " SELECT seq,type,body FROM vfp_table WHERE seq > ".$seq."" " ;
        //取出源數據庫中最新的記錄。
        $rs = $conn->Execute($sql);
        if ( $rs->EOF ) echo "Table had No new record, Max seq is [$seq].n";
        while (!$rs->EOF) {
        $sql = " INSERT INTO mysql_table VALUES ($rs->fields[seq],$rs->
        fields[type],".parse_keyword($rs->fields[body])."')";
        $DB_Site->query($sql);
        $rs->MoveNext();
        }
        $rs->Close();
        $DB_Site->close();
        $conn->Disconnect();
        $conn->Close('gn');
        ?>

      MYSQL

      發表評論 共有條評論
      用戶名: 密碼:
      驗證碼: 匿名發表
      japan日本人妻熟老太
      <del id="7msxa"><table id="7msxa"><strong id="7msxa"></strong></table></del><legend id="7msxa"></legend>

      <tbody id="7msxa"></tbody>
    3. <ol id="7msxa"></ol><th id="7msxa"><track id="7msxa"><rt id="7msxa"></rt></track></th>
      1. <dd id="7msxa"></dd>