dbbase.init.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. if (!defined('IS_INITPHP')) exit('Access Denied!');
  3. /*********************************************************************************
  4. * InitPHP 3.8.1 国产PHP开发框架 Dao-dbbase Driver DB基类
  5. *-------------------------------------------------------------------------------
  6. * 版权所有: CopyRight By initphp.com
  7. * 您可以自由使用该源码,但是在使用过程中,请保留作者信息。尊重他人劳动成果就是尊重自己
  8. *-------------------------------------------------------------------------------
  9. * $Author:zhuli
  10. * $Dtime:2013-5-29
  11. ***********************************************************************************/
  12. abstract class dbbaseInit{
  13. /**
  14. * 抽象数据库链接
  15. * @param string $host sql服务器
  16. * @param string $user 数据库用户名
  17. * @param string $password 数据库登录密码
  18. * @param string $database 数据库
  19. * @param string $charset 编码
  20. * @param string $pconnect 是否持久链接
  21. */
  22. abstract protected function connect($host, $user, $password, $database, $charset = 'utf8', $pconnect = 0);
  23. /**
  24. * 抽象数据库执行语句
  25. * @param string $sql SQL语句
  26. * @return obj
  27. */
  28. abstract protected function query($sql);
  29. /**
  30. * 抽象数据库-结果集中的行数
  31. * @param $result 结果集
  32. * @return array
  33. */
  34. abstract protected function result($result, $num=1);
  35. /**
  36. * 抽象数据库-从结果集中取得一行作为关联数组
  37. * @param $result 结果集
  38. * @return array
  39. */
  40. abstract protected function fetch_assoc($result);
  41. /**
  42. * 抽象数据库-从结果集中取得列信息并作为对象返回
  43. * @param $result 结果集
  44. * @return array
  45. */
  46. abstract protected function fetch_fields($result);
  47. /**
  48. * 抽象数据库-前一次操作影响的记录数
  49. * @return int
  50. */
  51. abstract protected function affected_rows();
  52. /**
  53. * 抽象数据库-结果集中的行数
  54. * @param $result 结果集
  55. * @return int
  56. */
  57. abstract protected function num_rows($result);
  58. /**
  59. * 抽象数据库-结果集中的字段数量
  60. * @param $result 结果集
  61. * @return int
  62. */
  63. abstract protected function num_fields($result);
  64. /**
  65. * 抽象数据库-获取上一INSERT的ID值
  66. * @return Int
  67. */
  68. abstract protected function insert_id();
  69. /**
  70. * 抽象数据库-释放结果内存
  71. * @param obj $result 需要释放的对象
  72. */
  73. abstract protected function free_result($result);
  74. /**
  75. * 抽象数据库链接关闭
  76. * @param string $sql SQL语句
  77. * @return obj
  78. */
  79. abstract protected function close();
  80. /**
  81. * 错误信息
  82. * @return string
  83. */
  84. abstract protected function error();
  85. }