21 : 14 : 19

点击下载

 
 +----------------------------------------------------------------------+
        作者:平平                                                             
 +----------------------------------------------------------------------+
        类名:dbPdo                                                             
 +----------------------------------------------------------------------+
        功能:数据库操作类库                                         
 +----------------------------------------------------------------------+
        网站:http://blog.pingping6.com                                      
 +----------------------------------------------------------------------+
        邮箱:pingping@pingping6.com                                         
 +----------------------------------------------------------------------+
        文档地址:https://api.pingping6.com/api/php/doc.api                          
 +----------------------------------------------------------------------+  
        备注:转载请标明作者,如有BUG请发邮箱指正                          
 +----------------------------------------------------------------------+  
        版权声明:                                               
        本套语法为本人原创,希望转载或者复制标明出处,                       
        如有BUG请联系我指正。本类库基于pdo,需要服务器开pdo扩展。
		支持方法链!理论支持所有数据库!内置封装sql仅支持mysql
        类库不断更新,请支持正版!                                           
 +----------------------------------------------------------------------+

方法及说明
__construct($type = null, $host = null, $user = null, $pass = null, $dbName = null)
//构造方法,参数可为空,若为空则需使用setter方法或connection方法,默认不会连接数据库需要调用connection返回

createDb()
//创建数据库,$this->dbName,自动打开事务
//返回当前对象或失败信息,可以使用链式方法

dropDb()
//删除数据库,$this->dbName,自动打开事务
//返回当前对象或失败信息,可以使用链式方法

createTable($tbarray)
//创建数据表,数据库为$this->dbName,自动打开事务
//$tbarray为二维关联数组,键为列名,值为列数据类型,如:['user'=>['id'=>'INT NOT NULL PRIMARY KEY','name'=>'varchar(20)']]
//返回当前对象或失败信息,可以使用链式方法

dropTable($tab)
//删除数据表,$tab,自动打开事务
//返回当前对象或失败信息,可以使用链式方法

connection($type = null, $host = null, $user = null, $pass = null, $dbName = null)
//连接数据库
//返回当前对象或失败信息,可以使用链式方法

setUtf8()
//设置UTF-8编码,防止中文乱码
//返回当前对象,可以使用链式方法

close()
//关闭数据库连接,若后面代码无数据库操作可手动关闭,一般不用手动关闭

__destruct()
//析构方法,关闭数据库连接

setType($type)
setHost($host)
setDbName($dbName)
setUser($user)
setPass($pass)
//setter方法,可设置数据库配置

transaction()
//手动打开事务,在执行自定义sql时有用,内置sql封装自动打开事务
//返回当前对象或失败信息,可以使用链式方法

commit()
//手动提交事务,手动打开事务后需手动提交,否则无效
//返回当前对象或失败信息,可以使用链式方法

rollback()
//回滚事务,手动打开事务出错后可手动回滚
//返回当前对象或失败信息,可以使用链式方法

execute($sql)
//执行自定义sql,返回受影响的行数

queryOne($sql)
//执行自定义查询sql,返回结果集关联数组的第一列

queryAll($sql)
//执行自定义查询sql,返回结果集关联数组

selectOne($option, $tbname, $where, $order=null, $limit=null)
//执行内置查询
//$option为查询的列,字符串或一维索引数组,如:'*','id',['id','name'],'id,name'
//$tbname为数据表名,字符串或一维索引数组,如:'stu','stu as s',['stu','teacher'],'stu,teacher'
//$where为条件,字符串或一维索引数组或二维索引数组,如:'id=1',['id','=','2'],[['','id','=','2'],['and','name','=','pingping']]
//$order为排序参照列,字符串,如:'id'
//$limit为查询指定位置数据,字符串,如:'0,2','开始位置,长度'
//返回结果集关联数组的第一列

selectAll($option, $tbname, $where, $order=null, $limit=null)
//执行内置查询,参数同selectOne方法
//返回结果集关联数组

returnSelectSql($option = '', $tbname = '', $where = '', $order = '', $limit = '')
//执行sql拼装,参数同selectOne方法
//返回拼装后的sql语句

insert($tbname, $arr)
//插入数据,$tbname为表名
//$arr为一维索引数组或二维索引数组,参数列数与数据库列数需相同,如:['1','pingping'],[['1','pingping'],['2','pingping2']]
//返回当前对象或失败信息,可以使用链式方法

delete($tbname, $where)
//删除数据,$tbname为表名
//$where为条件,字符串或一维索引数组或二维索引数组,如:'id=1',['id','=','2'],[['','id','=','2'],['and','name','=','pingping']]
//返回当前对象或失败信息,可以使用链式方法

update($option, $tbname, $where)
//删除数据,$tbname为表名
//$option为修改的列及值,字符串或一维关联数组,如:'id=3',['name'=>'pingping']
//$where为条件,字符串或一维索引数组或二维索引数组,如:'id=1',['id','=','2'],[['','id','=','2'],['and','name','=','pingping']]
//返回当前对象或失败信息,可以使用链式方法

insertId()
//返回上次插入操作后最后一行的id

rowCounts()
//返回受上一个sql语句影响的行数

errorCode()
//返回上一个sql语句错误码

errorinfo()
//返回上一个sql语句错误信息

quote($str)
//返回给sql语句添加引号并转义,内置sql封装自动执行

help($isHtml=1)
//输出帮助信息,即本文档

例子
(new dbPdo('mysql','localhost','dbname','root','password'))
->createDb()
->setUtf8()
->createTable(array('tablename'=>'id int'))
->selectOne('*','tablename',['id','=','1']));