程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql 數據庫拜訪類

Mysql 數據庫拜訪類

編輯:MySQL綜合教程

Mysql 數據庫拜訪類。本站提示廣大學習愛好者:(Mysql 數據庫拜訪類)文章只能為提供參考,不一定能成為您想要的結果。以下是Mysql 數據庫拜訪類正文


/**
* @Purpose: Mysql數據庫拜訪類
* @Package:
* @Author: [email protected]
* @Modifications:
* @See:
* @Time: 2008.10.10
*/
class DB_MYSQL
{
//============================================================
private $Host = 'localhost';
private $Database = 'db_name';
private $User = 'user';
private $Password = 'password';
//============================================================
private $Link_Id = 0; //數據庫銜接
private $Query_Id = 0; //查詢成果
private $Row_Result = array(); //成果集構成的數組
private $Field_Result = array(); //成果集字段構成的數組
private $Affected_Rows; //影響的行數
private $Rows; //成果集中記載的行數
private $Fields; //成果集中字段數
private $Row_Postion = 0; //記載指針地位索引
public $Insert_Id = 0;
//************************************************************
/**** 結構函數 ****/
function __construct()
{
$this->connect();
}
/**** 析構函數 ****/
function __destruct()
{
@mysql_free_result($this->Query_Id);
mysql_close($this->Link_Id);
}
/**** 銜接辦事器,選擇數據庫 ****/
function connect($Database = '',$Host = '',$User = '',$Password = '')
{
$Database = $Database == '' ? $this->Database : $Database;
$Host = $Host == '' ? $this->Host : $Host;
$User = $User == '' ? $this->User : $User;
$Password = $Password == '' ? $this->Password : $Password;
//-----------------------------------------------------------//
if(0 == $this->Link_Id)
{
$this->Link_Id = @mysql_pconnect($Host,$User,$Password);
if(!$this->Link_Id)
{
$this->halt('銜接數據庫辦事端掉敗!');
}
if(!mysql_select_db($this->Database,$this->Link_Id))
{
$this->halt('不克不及翻開指定的數據庫:'.$this->Database);
}
}
return $this->Link_Id;
}
/**** 釋放內存 ****/
function free()
{
if(@mysql_free_result($this->Query_Id))
{
unset($this->Row_Result);
}
$this->Query_Id = 0;
}
/**** 履行查詢 ****/
function query($Query_String)
{
//釋放前次查詢內存
if($this->Query_Id)
{
$this->free();
}
if(0 == $this->Link_Id)
{
$this->connect();
}
//設置中文字符集
@mysql_query('set names gb2312');
$this->Query_Id = mysql_query($Query_String,$this->Link_Id);
$this->Insert_Id = mysql_insert_id();
if(!$this->Query_Id)
{
$this->halt('SQL查詢語句失足:'.$Query_String);
}
@mysql_query('set names gb2312');
return $this->Query_Id;
}
/**** 將成果集指針指向指定行 ****/
function seek($pos)
{
if(@mysql_data_seek($this->Query_Id,$pos))
{
$this->Row_Position = $pos;
return true;
}
else
{
$this->halt('定位成果集產生毛病!');
return false;
}
}
/**** 前往成果集構成的數組 ****/
function get_rows_array()
{
$this->get_rows();
for($i = 0; $i < $this->Rows; $i++)
{
if(!mysql_data_seek($this->Query_Id,$i))
{
$this->halt('mysql_data_seek 查詢失足!');
}
$this->Row_Result[$i] = mysql_fetch_array($this->Query_Id);
}
return $this->Row_Result;
}
/**** 前往成果集字段構成的數組 ****/
function get_fields_array()
{
$this->get_fields();
for($i = 0; $i < $this->Fields; $i++)
{
$obj = mysql_fetch_field($this->Query_Id,$i);
$this->Field_Result[$i] = $obj->name;
}
return $this->Field_Result;
}
/**** 前往影響記載數 ****/
function get_affected_rows()
{
$this->Affected_Rows = mysql_affected_rows($this->Link_Id);
return $this->Affected_Rows;
}
/**** 前往成果集中的記載數 ****/
function get_rows()
{
$this->Rows = mysql_num_rows($this->Query_Id);
return $this->Rows;
}
/**** 前往成果集中的字段個數 ****/
function get_fields()
{
$this->Fields = mysql_num_fields($this->Query_Id);
return $this->Fields;
}
/**** 履行sql語句並前往由查詢成果中第一行記載構成的數組 ****/
function fetch_one_array($sql)
{ @mysql_query('set names gb2312');
$this->query($sql);
return mysql_fetch_array($this->Query_Id);
}
/**** 打印毛病信息 ****/
function halt($msg)
{
$this->Error = mysql_error();
printf("<font style='font-family:Arial,宋體;font-size:12px;'> <b>數據庫產生毛病:</b> %s \n",$msg);
printf("MySQL 前往毛病信息:</b> %s \n",$this->Error);
printf("毛病頁面:<font style='color:#0000EE;text-decoration:underline'>%s</font> \n",$_SERVER['PHP_SELF']);
printf(" 請將毛病信息提交到體系治理員或網站法式員處置! \n");
die('<b><font color=red>劇本終止</font></b></font>');
}
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved