diff --git a/system/database/DB_utility.php b/system/database/DB_utility.php
index c43b399..d96fffa 100644
--- a/system/database/DB_utility.php
+++ b/system/database/DB_utility.php
@@ -212,13 +212,7 @@
 
 
 	
-	function create_database()
-	{
-	}
 	
-	function drop_database()
-	{
-	}
 	
 	function show_databases()
 	{
diff --git a/system/database/drivers/mssql/mssql_utility.php b/system/database/drivers/mssql/mssql_utility.php
index 96d1128..9ff92d4 100644
--- a/system/database/drivers/mssql/mssql_utility.php
+++ b/system/database/drivers/mssql/mssql_utility.php
@@ -24,6 +24,34 @@
  */
 class CI_DB_mssql_utility extends CI_DB_utility {
 
+
+	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+		return $this->db->query("CREATE DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+		return $this->db->query("DROP DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
 	
 	/**
 	 * Version number query string
diff --git a/system/database/drivers/mysql/mysql_utility.php b/system/database/drivers/mysql/mysql_utility.php
index 9bf2f5a..d4e9786 100644
--- a/system/database/drivers/mysql/mysql_utility.php
+++ b/system/database/drivers/mysql/mysql_utility.php
@@ -24,6 +24,33 @@
  */
 class CI_DB_mysql_utility extends CI_DB_utility {
 	
+	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+		return $this->db->query("CREATE DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+		return $this->db->query("DROP DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
 
 	/**
 	 * Version number query string
@@ -86,6 +113,7 @@
 	}
 
 
+
 }
 
 ?>
\ No newline at end of file
diff --git a/system/database/drivers/mysqli/mysqli_utility.php b/system/database/drivers/mysqli/mysqli_utility.php
index a1498a3..9c773b4 100644
--- a/system/database/drivers/mysqli/mysqli_utility.php
+++ b/system/database/drivers/mysqli/mysqli_utility.php
@@ -25,6 +25,34 @@
 class CI_DB_mysqli_utility extends CI_DB_utility {
 	
 	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+		return $this->db->query("CREATE DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+		return $this->db->query("DROP DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
 	 * Version number query string
 	 *
 	 * @access	public
diff --git a/system/database/drivers/oci8/oci8_utility.php b/system/database/drivers/oci8/oci8_utility.php
index fdd585d..35b753e 100644
--- a/system/database/drivers/oci8/oci8_utility.php
+++ b/system/database/drivers/oci8/oci8_utility.php
@@ -25,6 +25,33 @@
 class CI_DB_oci8_utility extends CI_DB_utility {
 
 
+	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+
+	}
+
+	// --------------------------------------------------------------------
 
     /**
      * Version number query string
diff --git a/system/database/drivers/odbc/odbc_utility.php b/system/database/drivers/odbc/odbc_utility.php
index 837c8c8..51fec8e 100644
--- a/system/database/drivers/odbc/odbc_utility.php
+++ b/system/database/drivers/odbc/odbc_utility.php
@@ -24,6 +24,39 @@
  */
 class CI_DB_odbc_utility extends CI_DB_utility {
 
+
+	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+		// ODBC has no "create database" command since it's 
+		// designed to connect to an existing database
+		return FALSE;
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+		// ODBC has no "drop database" command since it's 
+		// designed to connect to an existing database
+		return FALSE;
+	}
+
+	// --------------------------------------------------------------------
+
 	/**
 	 * Version number query string
 	 *
diff --git a/system/database/drivers/postgre/postgre_utility.php b/system/database/drivers/postgre/postgre_utility.php
index cfc475f..c38cf6e 100644
--- a/system/database/drivers/postgre/postgre_utility.php
+++ b/system/database/drivers/postgre/postgre_utility.php
@@ -26,6 +26,34 @@
 
 	
 	/**
+	 * Create database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function create_database($name)
+	{
+		return $this->db->query("CREATE DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
+	 * Drop database
+	 *
+	 * @access	public
+	 * @param	string	the database name
+	 * @return	bool
+	 */
+	function drop_database($name)
+	{
+		return $this->db->query("DROP DATABASE ".$this->db->_escape_table($name));
+	}
+
+	// --------------------------------------------------------------------
+
+	/**
 	 * Version number query string
 	 *
 	 * @access	public
diff --git a/system/database/drivers/sqlite/sqlite_utility.php b/system/database/drivers/sqlite/sqlite_utility.php
index 2b99df9..8cbf0d5 100644
--- a/system/database/drivers/sqlite/sqlite_utility.php
+++ b/system/database/drivers/sqlite/sqlite_utility.php
@@ -24,6 +24,44 @@
  */
 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	public
+	 * @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;
+	}
+
+	// --------------------------------------------------------------------
+
 	/**
 	 * Version number query string
 	 *
diff --git a/system/language/english/db_lang.php b/system/language/english/db_lang.php
index d51bb6d..a3d0900 100644
--- a/system/language/english/db_lang.php
+++ b/system/language/english/db_lang.php
@@ -12,6 +12,7 @@
 $lang['db_field_param_missing'] = 'To fetch fields requires the name of the table as a parameter.';
 $lang['db_unsupported_function'] = 'This feature is not available for the database you are using.';
 $lang['db_transaction_failure'] = 'Transaction failure: Rollback performed';
+$lang['db_unable_to_drop'] = 'Unable to drop the specified database.';
 
 
 ?>
\ No newline at end of file