《MysqL教程MysqL 数据库访问类》要点:
本文介绍了MysqL教程MysqL 数据库访问类,希望对您有用。如果有疑问,可以联系我们。
* @Purpose: MysqL数据库访问类
* @Package:
* @Author: lisen@sellingclub.cn
* @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>');
}
} 总结
以上是内存溢出为你收集整理的MYSQL教程Mysql 数据库访问类全部内容,希望文章能够帮你解决MYSQL教程Mysql 数据库访问类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)