class DBDA
{
 public $host="localhost";
 public $uid="root";
 public $pwd="123";
 public $dbname="mydb";
 
 /**
 *给一个sql语句,返回执行的结果
 *@param string $sql 用户指定的sql语句
 *@param int $type 用户给的语句类型,0代表增删改,1代表查询
 *@return  返回查询的结果,如果是查询返回二维数组,如果是增删改返回true或false
 */
 function Query($sql,$type=1)           //type默认是1,在sql语句是增删改的情况下一定不要忘记将type的参数写成0
 {
  //造连接对象
  $db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
  
  //执行sql语句
  $reslut = $db->query($sql);
  
  //从结果集对象里面取数据
  if($type==1)
  {
   return $reslut->fetch_all();
  }
  else
  {
   return $reslut;
  }
 }
 
 /**
 *给一个sql语句,返回关联的二维数组
 *@param string $sql 用户指定的sql语句
 *@param int $type 用户给的语句类型,0代表增删改,1代表查询
 *@return  返回查询的结果,如果是查询返回二维数组,如果是增删改返回true或false
 */
 function GuanQuery($sql,$type=1)
 {
  //造连接对象
  $db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
  
  //执行sql语句
  $reslut = $db->query($sql);
  
  //取数据
  if($type==1)
  {
   $attr = array();
   while($a = $reslut->fetch_assoc())
   {
    $attr[] = $a;
   }
   
   return $attr; 
  }
  else
  {
   return $reslut;
  }
 }
 /**
 *给一个sql语句,返回字符串
 *@param string $sql 用户指定的sql语句
 *@param int $type 用户给的语句类型,0代表增删改,1代表查询
 *@return  返回查询的结果,如果是查询返回字符串,如果是增删改返回true或false
 */
 function StrQuery($sql,$type=1)      //单个数据的情况下strquery可直接给出结果,同时适合与聚合函数
 {
  //造连接对象
  $db = new MySQLi($this->host,$this->uid,$this->pwd,$this->dbname);
  
  //执行sql语句
  $reslut = $db->query($sql);
  
  //取数据
  if($type==1)
  {
   $attr = $reslut->fetch_all();
   $str="";
   foreach($attr as $v)
   {
    $str .= implode("^",$v);                              //字符串拼接
    $str .="|";
   }
   return substr($str,0,strlen($str)-1);               //去掉最后的"|"
  }
  else
  {
   return $reslut;
  }
 }
}

php 如何造一个简短原始的数据库类用来增加工作效率的更多相关文章

  1. 【转载】一个小时学会MySQL数据库

    一个小时学会MySQL数据库   目录 一.数据库概要 1.1.发展历史 1.1.1.人工处理阶段 1.1.2.文件系统 1.1.3.数据库管理系统 1.2.常见数据库技术品牌.服务与架构 1.3.数 ...

  2. 一个小时学会 MySQL 数据库

    随着移动互联网的结束与人工智能的到来大数据变成越来越重要,下一个成功者应该是拥有海量数据的,数据与数据库你应该知道. 一.数据库概要 数据库(Database)是存储与管理数据的软件系统,就像一个存入 ...

  3. RPC基础以及造一个RPC的轮子需要注意些什么

    RPC基础以及造一个RPC的轮子需要注意些什么 前言 rpc即远程过程调用,是分布式系统常用的通信方法.远程可以是在一台机器上的不同进程或在不同一个机器上的不同进程.rpc更看重速度,像调用本地方法一 ...

  4. PHP用单例模式实现一个数据库类

    使用单例模式的出发点: 1.php的应用主要在于数据库应用, 所以一个应用中会存在大量的数据库操作, 使用单例模式, 则可以避免大量的new 操作消耗的资源. 2.如果系统中需要有一个类来全局控制某些 ...

  5. 一个防止误删MSSQL数据库的方法

    一个防止误删MSSQL数据库的方法 环境:Windows2008 R2 .SQL 2012 今天发现一个有趣的现象,之前数据库服务器的其中几个数据库做过镜像,不过现在已经删除了,今天又要在那台服务器上 ...

  6. 开源一个适用iOS的数据库表结构更新机制的代码

    将前段时间开源的代码.公布一下: ARDBConfig On the iOS, provide a database table structure update mechanism, ensure ...

  7. Saiku一个简短的引论

    一个简短的引论 Saiku成立于2008年,通过Tom Barber和Paul Stoellberger研究. 最初叫Pentaho分析工具.最初是基于OLAP4J图书馆的使用GWT采用前端分析工具包 ...

  8. SSDB是一个开源的高性能数据库服务器

    SSDB是一个开源的高性能数据库服务器, 使用Google LevelDB作为存储引擎, 支持T级别的数据, 同时支持类似Redis中的zset和hash等数据结构, 在同时需求高性能和大数据的条件下 ...

  9. 使用SQL语句创建数据库1——创建一个数据库文件和一个日志文件的数据库

    目的:创建一个数据库文件和一个日志文件的数据库 在matser数据库下新建查询,输入的命令如下: USE master——指向当前使用的数据库.创建数据库实际上是向master数据库中增加一条数据库信 ...

随机推荐

  1. getContentResolver()内容解析者查询联系人、插入联系人

    首先,我们需要知道的两个Uri: 1.Uri uri = Uri.parse("content://com.android.contacts/raw_contacts");//查到 ...

  2. Ubuntu Terminal Shortcut

    Not all of the shortcuts are useful.Only remeber the most useful. 移动类Ctrl + a  - Jump to the start o ...

  3. Linux运维初级、中级、高级

    学习Linux,好的教程.使学习事半功倍! 老男孩Linux.shell.RHCE运维初中高级 下载地址: http://pan.baidu.com/s/1sB3VC 马哥教育Linux初级.中级.高 ...

  4. Vue-loader 开启压缩后的一些坑

    在使用vue-loader 配合webpack 对.vue文件进行加载的时候,如果开启了代码压缩会出来下面几种问题,做个记录. 丢失td结束标记,导致页面的布局错乱 input的属性type为text ...

  5. Collection中list集合的应用常见的方法

    集合 : 用存放对象的容器(集合)     Collection : 跟接口 : 单列集合          ---> List :有序的 ,元素是可以重复的.          ---> ...

  6. PagerAdapter 用法

    PagerAdapter简介 PagerAdapter是android.support.v4包中的类,它的子类有FragmentPagerAdapter, FragmentStatePagerAdap ...

  7. node.js-概念

    官方网站:http://nodejs.cn/ 1.Node 是一个服务器端 JavaScript 解释器,可是真的以为JavaScript不错的同学学习Node就能轻松拿下,那么你就错了,总结:水深不 ...

  8. ThreadLocal详解(实现多线程同步访问变量)

    ThreadLocal翻译成中文比较准确的叫法应该是:线程局部变量. 这个玩意有什么用处,或者说为什么要有这么一个东东?先解释一下,在并发编程的时候,成员变量如果不做任何处理其实是线程不安全的,各个线 ...

  9. MySQL忘记密码的解决方法

    1.关闭正在运行的MySQL. 2.打开DOS窗口,转到mysql\bin目录. 3.输入mysqld --skip-grant-tables回车. 4.原窗口已经不动了,再开一个DOS窗口,转到my ...

  10. 【BZOJ-3343】教主的魔法 分块

    3343: 教主的魔法 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 950  Solved: 414[Submit][Status][Discuss ...