本人采集來的數據是ACCESS的,但我的程序是mysql的,故寫了一個程序,程序三步走,分享一下,喜歡操作數據庫的朋友應該都會用到的.
1.連接mysql,代碼如下:
- $dbhost="localhost:3307";//服務器
- $db="dataname";//數據庫
- $dbuser="root";//用戶名
- $dbpass="*******";//密碼
- $db_qianzhui="sdb_";//表前綴
- $link=mysql_connect($dbhost,$dbuser,$dbpass);
- if(!$link) echo "鏈接失敗!";
- else echo "成功!!!";
- mysql_query("SET NAMES 'UTF8'");
- mysql_query("SET CHARACTER SET UTF8"); //>>>解決亂
- mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");///////>>>碼問題
- mysql_select_db("{$db}");
2.連接access數據庫,代碼如下:
- $datapath="data.mdb";
- $fenlei="101";
- $conn = new com("ADODB.Connection");
- $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=". realpath($datapath); //開源代碼Vevb.com
- $conn->Open($connstr);
- $rs = new com("ADODB.RecordSet");
- $rs->Open("select * from information where lanmu3id=13 ",$conn,1,1); //查詢*.MDB文件里面的
3.以下準備一邊讀一寫入操作:
- while(! $rs->eof) {
- //$f = $rs->Fields(1); //1.賦值(*調試用)
- //echo $f->value; //2.看能不能寫讀出來(*調試用)
- //以下是分別給變量賦值,其中'gb2312','utf-8'為了解決亂碼問題!
- $id =iconv ('gb2312','utf-8',$rs->Fields(ID)->value);//ID為access字段,或用數字表示
- $name = iconv ('gb2312','utf-8',$rs->Fields(title)->value);
- $jianjie = iconv ('gb2312','utf-8',$rs->Fields(1)->value);
- $content= iconv ('gb2312','utf-8',$rs->Fields(content)->value);
- $down = iconv ('gb2312','utf-8',$rs->Fields(download)->value);
- echo "<font color=red>".$name."</font>已經插入<br>";//輸出插入記錄
- ///依次執行insert,值為變量
- $sql="INSERT INTO `shopex`.`sdb_articles` (`article_id`,`node_id`,`title`,`content`,`uptime`,`ifpub`,`align`,`filetype`,`filename`,`orderlist`,`disabled`) VALUES ('','{$fenlei}','{$name}','{$info}','1275549287','1',Null,Null,NULL,NULL,'false')";
- ////以上是插入MYSQL數據庫的SQL//////
- mysql_query($sql); //執行語句!!!
- ///echo $rs->Fields(name)->value. "<br>";
- $rs->MoveNext();
- /////個人用于ACCESS向mysql內轉換數據庫的操作,
- }
新聞熱點
疑難解答