blob: c175a382b7f6b7aa28c96ad8fd6da4924efe884c [file] [log] [blame]
Andrey Andreev214583f2012-01-26 16:39:09 +02001<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Derek Allard2067d1a2008-11-13 22:59:24 +00002/**
3 * CodeIgniter
4 *
Greg Aker741de1c2010-11-10 14:52:57 -06005 * An open source application development framework for PHP 5.1.6 or newer
Derek Allard2067d1a2008-11-13 22:59:24 +00006 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -05007 * NOTICE OF LICENSE
Andrey Andreev214583f2012-01-26 16:39:09 +02008 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -05009 * Licensed under the Open Software License version 3.0
Andrey Andreev214583f2012-01-26 16:39:09 +020010 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -050011 * This source file is subject to the Open Software License (OSL 3.0) that is
12 * bundled with this package in the files license.txt / license.rst. It is
13 * also available through the world wide web at this URL:
14 * http://opensource.org/licenses/OSL-3.0
15 * If you did not receive a copy of the license and are unable to obtain it
16 * through the world wide web, please send an email to
17 * licensing@ellislab.com so we can send you a copy immediately.
18 *
Derek Allard2067d1a2008-11-13 22:59:24 +000019 * @package CodeIgniter
Derek Jonesf4a4bd82011-10-20 12:18:42 -050020 * @author EllisLab Dev Team
Greg Aker0defe5d2012-01-01 18:46:41 -060021 * @copyright Copyright (c) 2008 - 2012, EllisLab, Inc. (http://ellislab.com/)
Derek Jonesf4a4bd82011-10-20 12:18:42 -050022 * @license http://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0)
Derek Allard2067d1a2008-11-13 22:59:24 +000023 * @link http://codeigniter.com
24 * @since Version 1.0
25 * @filesource
26 */
27
Derek Allard2067d1a2008-11-13 22:59:24 +000028/**
29 * Postgre Utility Class
30 *
31 * @category Database
Derek Jonesf4a4bd82011-10-20 12:18:42 -050032 * @author EllisLab Dev Team
Derek Allard2067d1a2008-11-13 22:59:24 +000033 * @link http://codeigniter.com/user_guide/database/
34 */
35class CI_DB_postgre_utility extends CI_DB_utility {
36
37 /**
38 * List databases
39 *
Andrey Andreev214583f2012-01-26 16:39:09 +020040 * @return string
Derek Allard2067d1a2008-11-13 22:59:24 +000041 */
Andrey Andreev214583f2012-01-26 16:39:09 +020042 public function _list_databases()
Derek Allard2067d1a2008-11-13 22:59:24 +000043 {
Andrey Andreev214583f2012-01-26 16:39:09 +020044 return 'SELECT datname FROM pg_database';
Derek Allard2067d1a2008-11-13 22:59:24 +000045 }
46
47 // --------------------------------------------------------------------
48
49 /**
50 * Optimize table query
51 *
52 * Is table optimization supported in Postgre?
53 *
Derek Allard2067d1a2008-11-13 22:59:24 +000054 * @param string the table name
Andrey Andreev214583f2012-01-26 16:39:09 +020055 * @return string
Derek Allard2067d1a2008-11-13 22:59:24 +000056 */
Andrey Andreev214583f2012-01-26 16:39:09 +020057 public function _optimize_table($table)
Derek Allard2067d1a2008-11-13 22:59:24 +000058 {
Andrey Andreev214583f2012-01-26 16:39:09 +020059 return 'REINDEX TABLE '.$table;
Derek Allard2067d1a2008-11-13 22:59:24 +000060 }
61
62 // --------------------------------------------------------------------
63
64 /**
65 * Repair table query
66 *
67 * Are table repairs supported in Postgre?
68 *
Derek Allard2067d1a2008-11-13 22:59:24 +000069 * @param string the table name
Andrey Andreev214583f2012-01-26 16:39:09 +020070 * @return bool
Derek Allard2067d1a2008-11-13 22:59:24 +000071 */
Andrey Andreev214583f2012-01-26 16:39:09 +020072 public function _repair_table($table)
Derek Allard2067d1a2008-11-13 22:59:24 +000073 {
74 return FALSE;
75 }
76
77 // --------------------------------------------------------------------
78
79 /**
80 * Postgre Export
81 *
Derek Allard2067d1a2008-11-13 22:59:24 +000082 * @param array Preferences
83 * @return mixed
84 */
Andrey Andreev214583f2012-01-26 16:39:09 +020085 public function _backup($params = array())
Derek Allard2067d1a2008-11-13 22:59:24 +000086 {
87 // Currently unsupported
88 return $this->db->display_error('db_unsuported_feature');
89 }
Derek Allard2067d1a2008-11-13 22:59:24 +000090}
91
Derek Allard2067d1a2008-11-13 22:59:24 +000092/* End of file postgre_utility.php */
Andrey Andreev214583f2012-01-26 16:39:09 +020093/* Location: ./system/database/drivers/postgre/postgre_utility.php */