blob: 754a755e47e24ce75e294db7dd685d75de2e700f [file] [log] [blame]
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
/**
* Code Igniter
*
* An open source application development framework for PHP 4.3.2 or newer
*
* @package CodeIgniter
* @author Rick Ellis
* @copyright Copyright (c) 2006, pMachine, Inc.
* @license http://www.codeignitor.com/user_guide/license.html
* @link http://www.codeigniter.com
* @since Version 1.0
* @filesource
*/
// ------------------------------------------------------------------------
/**
* SQLite Utility Class
*
* @category Database
* @author Rick Ellis
* @link http://www.codeigniter.com/user_guide/database/
*/
class CI_DB_sqlite_utility extends CI_DB_utility {
/**
* Create database
*
* @access public
* @param string the database name
* @return bool
*/
function _create_database()
{
// In SQLite, a database is created when you connect to the database
return TRUE;
}
// --------------------------------------------------------------------
/**
* Drop database
*
* @access private
* @param string the database name
* @return bool
*/
function _drop_database($name)
{
if ( ! @file_exists($this->db->database) OR ! @unlink($this->db->database))
{
if ($this->db_debug)
{
return $this->display_error('db_unable_to_drop');
}
return FALSE;
}
return TRUE;
}
// --------------------------------------------------------------------
/**
* List databases
*
* @access private
* @return bool
*/
function _list_databases()
{
if ($this->db_debug)
{
return $this->display_error('db_unsuported_feature');
}
return array();
}
// --------------------------------------------------------------------
/**
* Drop Table
*
* @access private
* @return bool
*/
function _drop_table($table)
{
if ($this->db_debug)
{
return $this->display_error('db_unsuported_feature');
}
return array();
}
// --------------------------------------------------------------------
/**
* Version number query string
*
* @access public
* @return string
*/
function _version()
{
return sqlite_libversion();
}
// --------------------------------------------------------------------
/**
* Show table query
*
* Generates a platform-specific query string so that the table names can be fetched
*
* @access public
* @return string
*/
function _show_tables()
{
return "SELECT name from sqlite_master WHERE type='table'";
}
// --------------------------------------------------------------------
/**
* Show columnn query
*
* Generates a platform-specific query string so that the column names can be fetched
*
* @access public
* @param string the table name
* @return string
*/
function _show_columns($table = '')
{
// Not supported
return FALSE;
}
// --------------------------------------------------------------------
/**
* Field data query
*
* Generates a platform-specific query so that the column data can be retrieved
*
* @access public
* @param string the table name
* @return object
*/
function _field_data($table)
{
return "SELECT * FROM ".$this->db->_escape_table($table)." LIMIT 1";
}
}
?>