PageRenderTime 18ms CodeModel.GetById 11ms app.highlight 4ms RepoModel.GetById 1ms app.codeStats 0ms

/halogy/database/drivers/sqlite/sqlite_utility.php

https://bitbucket.org/haloweb/halogy-1.0/
PHP | 141 lines | 39 code | 15 blank | 87 comment | 4 complexity | d6fee147022111b97c3d4f13f6faeae6 MD5 | raw file
  1<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2/**
  3 * CodeIgniter
  4 *
  5 * An open source application development framework for PHP 4.3.2 or newer
  6 *
  7 * @package		CodeIgniter
  8 * @author		ExpressionEngine Dev Team
  9 * @copyright	Copyright (c) 2008 - 2009, EllisLab, Inc.
 10 * @license		http://codeigniter.com/user_guide/license.html
 11 * @link		http://codeigniter.com
 12 * @since		Version 1.0
 13 * @filesource
 14 */
 15
 16// ------------------------------------------------------------------------
 17
 18/**
 19 * SQLite Utility Class
 20 *
 21 * @category	Database
 22 * @author		ExpressionEngine Dev Team
 23 * @link		http://codeigniter.com/user_guide/database/
 24 */
 25class CI_DB_sqlite_utility extends CI_DB_utility {
 26
 27	/**
 28	 * List databases
 29	 *
 30	 * I don't believe you can do a database listing with SQLite
 31	 * since each database is its own file.  I suppose we could
 32	 * try reading a directory looking for SQLite files, but
 33	 * that doesn't seem like a terribly good idea
 34	 *
 35	 * @access	private
 36	 * @return	bool
 37	 */
 38	function _list_databases()
 39	{
 40		if ($this->db_debug)
 41		{
 42			return $this->display_error('db_unsuported_feature');
 43		}
 44		return array();
 45	}
 46
 47	// --------------------------------------------------------------------
 48
 49	/**
 50	 * Optimize table query
 51	 *
 52	 * Is optimization even supported in SQLite?
 53	 *
 54	 * @access	private
 55	 * @param	string	the table name
 56	 * @return	object
 57	 */
 58	function _optimize_table($table)
 59	{
 60		return FALSE;
 61	}
 62
 63	// --------------------------------------------------------------------
 64
 65	/**
 66	 * Repair table query
 67	 *
 68	 * Are table repairs even supported in SQLite?
 69	 *
 70	 * @access	private
 71	 * @param	string	the table name
 72	 * @return	object
 73	 */
 74	function _repair_table($table)
 75	{
 76		return FALSE;
 77	}
 78
 79	// --------------------------------------------------------------------
 80
 81	/**
 82	 * SQLite Export
 83	 *
 84	 * @access	private
 85	 * @param	array	Preferences
 86	 * @return	mixed
 87	 */
 88	function _backup($params = array())
 89	{
 90		// Currently unsupported
 91		return $this->db->display_error('db_unsuported_feature');
 92	}
 93
 94	/**
 95	 *
 96	 * The functions below have been deprecated as of 1.6, and are only here for backwards
 97	 * compatibility.  They now reside in dbforge().  The use of dbutils for database manipulation
 98	 * is STRONGLY discouraged in favour if using dbforge.
 99	 *
100	 */
101
102	/**
103	 * Create database
104	 *
105	 * @access	public
106	 * @param	string	the database name
107	 * @return	bool
108	 */
109	function _create_database()
110	{
111		// In SQLite, a database is created when you connect to the database.
112		// We'll return TRUE so that an error isn't generated
113		return TRUE;
114	}
115
116	// --------------------------------------------------------------------
117
118	/**
119	 * Drop database
120	 *
121	 * @access	private
122	 * @param	string	the database name
123	 * @return	bool
124	 */
125	function _drop_database($name)
126	{
127		if ( ! @file_exists($this->db->database) OR ! @unlink($this->db->database))
128		{
129			if ($this->db->db_debug)
130			{
131				return $this->db->display_error('db_unable_to_drop');
132			}
133			return FALSE;
134		}
135		return TRUE;
136	}
137
138}
139
140/* End of file sqlite_utility.php */
141/* Location: ./system/database/drivers/sqlite/sqlite_utility.php */