PHP MsSQL(MS SQL 2012 express)自製資料庫備份程式(可以指定DB和TABLE將資料變成CSV)

PHP MsSQL(MS SQL 2012 express)自製資料庫備份程式(可以指定DB和TABLE將資料變成CSV)

PHP MsSQL(MS SQL 2012 express)自製資料庫備份程式(可以指定DBTABLE將資料變成CSV)


 

 

phpMsSQLMS SQLexpressheaderodbc_connectissetfopenodbc_num_fieldsodbc_field_namefwritefclosefopenodbc_closeodbc_free_resulttrimodbc_result

<?php 

  //http://www.programgo.com/article/48613569901/;jsessionid=85BFB10EFD4F2C1C7F7EC17649DB14B4

  /**

  *
@author samsun

  *
@copyright 2007

  *
php
使用ODBC连接sql
server
数据库实例

  */ 

  header(“Content-Type:text/html;
charset=utf-8”);//PHP
亂碼

  //數據庫配置信息

  $user=$_GET[‘user’];

  $pw=$_GET[‘pw’];

  $dbname=$_GET[‘dbname’];

  $tbname=$_GET[‘tbname’];

  set_time_limit(3600);//1hr
time_out

  if(!isset($user)
|| !isset($pw) || !isset($dbname) || !isset($tbname))

  {

     die(‘參數不足,無法執行‘);

  }

 

  $server=’127.0.0.1′;

  /*

  $username=’root’; 

  $password=’700502′; 

  $database=’v78′; 

  */

  $connstr
= “Driver={SQL Server};Server=$server;Database=$dbname”; 

  $connect
=odbc_connect($connstr,$user,$pw,SQL_CUR_USE_ODBC)or die (“couldn’t
connect”);

  $result
= odbc_exec($connect, “SELECT * FROM “.$tbname);

 

  $filename
= $dbname.”_”.$tbname.”.csv”;

  $myfile
= fopen($filename, “w”) or die(“Unable to open file!”);

  $field_name
=”;

 

  $len=odbc_num_fields($result);//欄位數量

  $field_name=””;

   
for($i = 1;$i <= $len;$i++)

   
{

     if($i!=1)

     {

       $field_name
.=”,”;

     }

     $name[$i]=odbc_field_name($result,$i);//取得特定欄位的名稱。要特別注意的是 field_index 參數

     $field_name
.=$name[$i];

   
}

  fwrite($myfile,
$field_name.”\n”);

  echo
$field_name;

  echo
“<br>”;

 

  while(odbc_fetch_row($result))

  {

     $field_value=”;

     for($i=1;$i<=$len;$i++)

     {

       if($i!=1)

       {

          $field_value
.=”,”;

       }

       $buf=trim(odbc_result($result,$i));//清除空白

       $field_value
.=”‘”.$buf.”‘”;//$field_value
.=”‘”.odbc_result($result,$i).”‘”;

     }

     fwrite($myfile,
$field_value.”\n”);

     echo
$field_value;

     echo
“<br>”;

  }

  fclose($myfile);

  odbc_free_result($result);

  odbc_close($connect);

  echo
“MsSQL2CSV.php done…”;

?> 

 


 


發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *