blob: dbfbe5f6b1b70f2b0df28b336f6e8893cacb6737 [file] [log] [blame]
Andrey Andreev7f55d612012-01-26 13:44:28 +02001<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
Esen Sagynov2e087942011-08-09 23:35:01 -07002/**
3 * CodeIgniter
4 *
5 * An open source application development framework for PHP 5.1.6 or newer
6 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -05007 * NOTICE OF LICENSE
Andrey Andreev7f55d612012-01-26 13:44:28 +02008 *
Derek Jonesf4a4bd82011-10-20 12:18:42 -05009 * Licensed under the Open Software License version 3.0
Andrey Andreev7f55d612012-01-26 13:44:28 +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 *
Esen Sagynov2e087942011-08-09 23:35:01 -070019 * @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)
Esen Sagynov2e087942011-08-09 23:35:01 -070023 * @link http://codeigniter.com
24 * @since Version 1.0
25 * @filesource
26 */
27
Esen Sagynov2e087942011-08-09 23:35:01 -070028/**
29 * CUBRID Utility Class
30 *
31 * @category Database
Esen Sagynov2ab2b1e2011-08-11 00:41:16 -070032 * @author Esen Sagynov
Esen Sagynov2e087942011-08-09 23:35:01 -070033 * @link http://codeigniter.com/user_guide/database/
34 */
35class CI_DB_cubrid_utility extends CI_DB_utility {
36
37 /**
38 * List databases
39 *
Esen Sagynov2e087942011-08-09 23:35:01 -070040 * @return array
41 */
Andrey Andreev7f55d612012-01-26 13:44:28 +020042 public function _list_databases()
Esen Sagynov2e087942011-08-09 23:35:01 -070043 {
44 // CUBRID does not allow to see the list of all databases on the
45 // server. It is the way its architecture is designed. Every
46 // database is independent and isolated.
47 // For this reason we can return only the name of the currect
48 // connected database.
Andrey Andreev7f55d612012-01-26 13:44:28 +020049 return "SELECT '".$this->database."'";
Esen Sagynov2e087942011-08-09 23:35:01 -070050 }
51
52 // --------------------------------------------------------------------
53
54 /**
55 * Optimize table query
56 *
57 * Generates a platform-specific query so that a table can be optimized
58 *
Esen Sagynov2e087942011-08-09 23:35:01 -070059 * @param string the table name
Andrey Andreev7f55d612012-01-26 13:44:28 +020060 * @return bool
Esen Sagynov2e087942011-08-09 23:35:01 -070061 * @link http://www.cubrid.org/manual/840/en/Optimize%20Database
62 */
Andrey Andreev7f55d612012-01-26 13:44:28 +020063 public function _optimize_table($table)
Esen Sagynov2e087942011-08-09 23:35:01 -070064 {
65 // No SQL based support in CUBRID as of version 8.4.0. Database or
66 // table optimization can be performed using CUBRID Manager
67 // database administration tool. See the link above for more info.
68 return FALSE;
69 }
70
71 // --------------------------------------------------------------------
72
73 /**
74 * Repair table query
75 *
76 * Generates a platform-specific query so that a table can be repaired
77 *
Esen Sagynov2e087942011-08-09 23:35:01 -070078 * @param string the table name
Andrey Andreev7f55d612012-01-26 13:44:28 +020079 * @return bool
Esen Sagynov2e087942011-08-09 23:35:01 -070080 * @link http://www.cubrid.org/manual/840/en/Checking%20Database%20Consistency
81 */
Andrey Andreev7f55d612012-01-26 13:44:28 +020082 public function _repair_table($table)
Esen Sagynov2e087942011-08-09 23:35:01 -070083 {
84 // Not supported in CUBRID as of version 8.4.0. Database or
85 // table consistency can be checked using CUBRID Manager
86 // database administration tool. See the link above for more info.
87 return FALSE;
88 }
89
90 // --------------------------------------------------------------------
91 /**
92 * CUBRID Export
93 *
Esen Sagynov2e087942011-08-09 23:35:01 -070094 * @param array Preferences
95 * @return mixed
96 */
Andrey Andreev7f55d612012-01-26 13:44:28 +020097 public function _backup($params = array())
Esen Sagynov2e087942011-08-09 23:35:01 -070098 {
99 // No SQL based support in CUBRID as of version 8.4.0. Database or
100 // table backup can be performed using CUBRID Manager
101 // database administration tool.
102 return $this->db->display_error('db_unsuported_feature');
103 }
104}
105
106/* End of file cubrid_utility.php */
Andrey Andreev7f55d612012-01-26 13:44:28 +0200107/* Location: ./system/database/drivers/cubrid/cubrid_utility.php */