php教程 mssql server 2005数据库教程连接类
class msDriver{
public $error;
public $querynum=0;
public $link;
public $lastQuery;
public $lastInsert_id=0;
public $error_callback=array('record'); //record,ignore,report,abort
public $error_report_file=ROOT."/webdata/db.error.log";
function __construct($server='',$connectionInfo=array()){
if ($server){
$this->connect($server,$connectionInfo);
}
}
function __destruct(){
!$link && $link= &$this->link;
if ($link) sqlsrv_close( $link );
}
function connect($dbhost='(local)', $connectionInfo=array()){
$this->link=sqlsrv_connect($dbhost,$connectionInfo);
if (!$this->link) $this->halt();
}
/**
*查询过程
*
* @param string $sql
* @param resource $link
* @return resource
*/
function query($sql="",$link=''){
!$link && $link= &$this->link;
$query=@sqlsrv_query($link,$sql);
$this->lastQuery=&$query;
if (!$query) $this->halt();
$reg = "#insert into#";
if(preg_match($reg,$sql)){
$res = sqlsrv_query($link,"select @@IDENTITY as id");
$this->lastInsert_id = sqlsrv_get_field($res,0);
}
return $query;
}
/**
* 返回字段总数
*
* @param resource $result
* @return number
*/
function num_fields($result=''){
if (!$result) $this->halt();
return @sqlsrv_num_fields($result);
}
/**
* 返回字段值
*
* @param resource $result
* @param Int $fieldIndex
* @return value
*/
function result($result='',$fieldIndex=0){
if (!$result) $this->halt();
return sqlsrv_get_field($result,$fieldIndex);
}
/**
* 返回行数组
*
* @param unknown_type $result
* @return unknown
*/
function fetch_array($result,$type=SQLSRV_FETCH_ASSOC){ //SQLSRV_FETCH_NUMERIC,SQLSRV_FETCH_ASSOC,SQLSRV_FETCH_BOTH
!$result && $result=$this->lastQuery;
if (!$result) $this->halt();
$r=@sqlsrv_fetch_array($result,$type);
return is_array($r)?$r:0;
}
/**
* 返回影响的记录数
*
* @param resource $result
* @return number
*/
function affected_rows($result) {
if (!$result) $this->halt();
return sqlsrv_rows_affected($result);
}
function insert_id(){
return $this->lastInsert_id;
}
function freeResult($result){
!$result && $result=$this->lastQuery;
sqlsrv_free_stmt($result);
}
/**
* 错误的处理方式
*
*/
function halt(){
$err=$this->getEroor();
//var_dump($err['']);
if (in_array('record',$this->error_callback)){
$fp=fopen($this->error_report_file,'a+');
if ($fp){
fwrite($fp,"[".date("Y//m/dH:i:s")."](".$err['code'].")".$err['message'].",URL:".$_SERVER["REQUEST_URI"]."?".$_SERVER["QUERY_STRING"]."rn");
fclose($fp);
}
}
if (in_array('report',$this->error_callback)){
echo "
错误:[".date("Y//m/d H:i:s")."](".$err['code'].")".$err['message'];
}
if (in_array('abort',$this->error_callback)){
exit;
}
}
/**
* 返回查询错误
*
* @return array
*/
function getEroor(){
$err=sqlsrv_errors();
//return array('code'=>$err['code'],'message'=>$err['message']);
return is_array($err)?$err[0]:array();
}
}
php mssql server 2005数据库连接类
时间: 2024-10-01 15:14:16
php mssql server 2005数据库连接类的相关文章
ASP.NET中不使用LINQ访问 mssql server 2005数据库解决办法
asp教程.net中不使用linq访问 mssql server 2005数据库教程解决办法 asp.net教程应用程序的数据访问是通过ado.net完成的,ado.net可以使web应用程序从各种数据源中快速访问数据. 在asp.net中不使用linq访问数据库,而是通过写sql文直接访问microsoft sql server 2005 1.添加引用system.configuration,并在程序中使用命名空间using system.configuration. 2."configura
MSSQL SERVER 2005 数学函数整理
MSSQL SERVER 2005 数学函数 1.求绝对值 ABS() select FWeight-50,ABS(FWeight-50),ABS(-5.38) from T_Person 2.求幂 POWER(X,Y) 用来计算X的Y次幂 select FWeight,POWER(FWeight,-0.5),POWER(FWeight,2), POWER(FWeight,3),POWER(FWeight,4) from T_Person select Power(2,2) 3.求平方根 SQR
关于MSSQL SERVER 2005中数据乱码的问题
今天新装了MSSQL SERVER 2005 感觉界面比以前更友好 在想.NET 的界面过度 安装完毕 新建一数据库 插入条记录 发现回显的全部都是 ?????.... 乱码.... 仔细查看了半天 发现数据库的排序规则是德语... 修改方法:数据库属性->选项->排序规则 设置成 CHINESE_PRC_CI_AI 就可以了
MSSQL SERVER 2005 数学函数整理_MsSql
MSSQL SERVER 2005 数学函数 1.求绝对值 ABS() select FWeight-50,ABS(FWeight-50),ABS(-5.38) from T_Person 2.求幂 POWER(X,Y) 用来计算X的Y次幂 select FWeight,POWER(FWeight,-0.5),POWER(FWeight,2), POWER(FWeight,3),POWER(FWeight,4) from T_Person select Power(2,2) 3.求平方根 SQR
Tomcat5+Mssql server 2000数据库连接池配置之旅_JSP编程
Tomcat相信大家已经很熟悉了,作为一种免费而强大的java web server,得到了很多java爱好者的青睐,最新版本的tomcat5支持servlet2.4和jsp2.0,今天我将采用Tomcat5和Ms sqlserver 000一起来开始数据库连接池配置之旅.需要的准备1.jdk 我使用的版本1.4.012.Tomcat 5 我使用的是5.0.16版本 下载地址:http://jakarta.apache.org/site/binindex.cgi3.Mssql server 20
MS-SQL Server 2005 其中三个版本的比较_MsSql
SQL2005 分五个版本,如下所列: 1.Enterprise(企业版), 2.Development(开发版), 3.Workgroup,(工作群版) 4.Standard,(标准版) 5.Express.(估且就叫它简易版吧) 这几个版本,我们究竟应该使用哪一版呢?这是许多初学SQL2005的人最常问的问题. 我简单的比较一下 Enterprise, Development 和 Express 等三个版本: 以功能言,Enterprise 版和 Development 版的
MS-SQL Server 2005 其中三个版本的比较
SQL2005 分五个版本,如下所列: 1.Enterprise(企业版), 2.Development(开发版), 3.Workgroup,(工作群版) 4.Standard,(标准版) 5.Express.(估且就叫它简易版吧) 这几个版本,我们究竟应该使用哪一版呢?这是许多初学SQL2005的人最常问的问题. 我简单的比较一下 Enterprise, Development 和 Express 等三个版本: 以功能言,Enterprise 版和 Development 版的功能一模
将MS SQL Server 2005 SP2整合到安装文件——脚本修正
刚入手新本本,一阵忙活,装好系统.小黑的驱动真不少,七七八八也有二三十个文件要下载.安装.轮到安装开发软件更是崩溃,一堆堆的sp等着我们打!微软留给我们的噩梦啊,所以,开始下载整合了SP补丁的软件,唯独没有找到SQL Server2005的整合版下载,只能自己动手,做个整合版了.网上一阵Google,见到园子里面这篇文章:将 MS SQL Server 2005 SP2 整合到安装文件,写的很不错,方法都有了,一看还有个脚本集成,很不错,可惜一执行下来,一堆错误,自己手动稍微调整了下,已经测试通
mssql server 数学函数实例(1/2)
MSSQL SERVER 2005 数学函数 1.求绝对值 ABS() select FWeight-50,ABS(FWeight-50),ABS(-5.38) from T_Person 2.求幂 POWER(X,Y) 用来计算X的Y次幂 select FWeight,POWER(FWeight,-0.5),POWER(FWeight,2), POWER(FWeight,3),POWER(FWeight,4) from T_Person select Power(2,2) 3.求平方根 SQR