PHP+sqlite使用示例

本文介绍了一种使用PHP与SQLite进行数据库操作的方法。SQLite作为一款轻型数据库,适用于嵌入式产品,其资源占用低,支持多种操作系统,并能与多种编程语言结合。文章通过示例展示了如何用PHP5及以上版本创建、打开数据库文件,创建数据表,插入及检索数据。

PHP+sqlite使用示例

 

http://blog.csdn.net/keyunq/article/details/4377083

 

SQLite是一款轻型的数据库,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非 常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相 结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起MySQL、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理 速度比他们都快。

 

 

PHP 5开始不再默认支持Mysql,而是默认支持SQLite,可见它的影响力多么大,所以如果你想做SQLite的PHP开发,建议你使用PHP 5.0.0以上版本。

 

 

下面是使用sqlite的一个示例

首先可以在目录下新建一个upload.db的空文件

 

 

 

  1. <?php  
  2. define("LN", __LINE__);//行号  
  3. define("FL", __FILE__);//当前文件  
  4. define("DEBUG", 0);//调试开关  
  5. $db_name = "upload.db";  
  6. //创建数据库文件,文件内容为空  
  7. if (!file_exists($db_name)) {  
  8.  if (!($fp = fopen($db_name, "w+"))) {  
  9.   exit(error_code(-1, LN));  
  10.  }  
  11.  fclose($fp);  
  12. }  
  13. //打开数据库文件  
  14. if (!($db = sqlite_open($db_name))) {  
  15.  exit(error_code(-2, LN));  
  16. }  
  17. //产生数据表结构  
  18. if (!sqlite_query($db, "DROP TABLE uploads")) {  
  19.  exit(error_code(-3, LN));  
  20. }  
  21. if (!sqlite_query($db, "CREATE TABLE uploads (id integer primary key, file_name varchar(200) UNIQUE, make_time integer)")) {  
  22.  exit(error_code(-3, LN));  
  23. }  
  24. //插入一条数据  
  25. if (!sqlite_query($db, " INSERT INTO uploads (file_name, make_time) VALUES ('upload/111.data','".time()."') ")) {  
  26.  exit(error_code(-4, LN));  
  27. }  
  28. //把数据检索出来  
  29. if (!($result = sqlite_query($db, "SELECT * FROM uploads"))) {  
  30.  exit(error_code(-5, LN));  
  31. }  
  32. //获取检索数据并显示  
  33. while ($array = sqlite_fetch_array($result)) {  
  34.  echo "ID: ". $array[file_name] ."<br>: ". $array[make_time] ;  
  35. }  
  36. /* 错误信息代码函数 */  
  37. function error_code($code, $line_num, $debug=DEBUG)  
  38. {  
  39.  if ($code<-6 || $code>-1) {  
  40.   return false;  
  41.  }  
  42.  switch($code) {  
  43.   case -1: $errmsg = "Create database file error.";  
  44.    break;  
  45.   case -2: $errmsg = "Open sqlite database file failed.";  
  46.    break;  
  47.   case -3: $errmsg = "Create table failed, table already exist.";  
  48.    break;  
  49.   case -4: $errmsg = "Insert data failed.";  
  50.    break;  
  51.   case -5: $errmsg = "Query database data failed.";  
  52.    break;  
  53.   case -6: $errmsg = "Fetch data failed.";  
  54.    break;  
  55.   case -7: $errmsg = "";  
  56.    break;  
  57.   default: $errmsg = "Unknown error.";  
  58.  }  
  59.  $m = "<b>[ Error ]</b><br>File: ". basename(FL) ." <br>Line: ". LN ."<br>Mesg: ". $errmsg ."";  
  60.  if (!$debug) {  
  61.   ($m = $errmsg);  
  62.  }  
  63.  return $m;  
  64. }  
  65. ?>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值