blob: 2cc3f52198af01b58a906e9659bac6303ca3a567 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Code Igniter User Guide</title>
<style type='text/css' media='all'>@import url('../userguide.css');</style>
<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
<script type="text/javascript" src="../nav/nav.js"></script>
<script type="text/javascript" src="../nav/prototype.lite.js"></script>
<script type="text/javascript" src="../nav/moo.fx.js"></script>
<script type="text/javascript">
window.onload = function() {
myHeight = new fx.Height('nav', {duration: 400});
myHeight.hide();
}
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv='expires' content='-1' />
<meta http-equiv= 'pragma' content='no-cache' />
<meta name='robots' content='all' />
<meta name='author' content='Rick Ellis' />
<meta name='description' content='Code Igniter User Guide' />
</head>
<body>
<!-- START NAVIGATION -->
<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle.jpg" width="153" height="44" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
<div id="masthead">
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td><h1>Code Igniter User Guide Version 1.5.0</h1></td>
<td id="breadcrumb_right"><a href="../toc.html">Full Table of Contents</a></td>
</tr>
</table>
</div>
<!-- END NAVIGATION -->
<!-- START BREADCRUMB -->
<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
<tr>
<td id="breadcrumb">
<a href="http://www.codeigniter.com/">Code Igniter Home</a> &nbsp;&#8250;&nbsp;
<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
<a href="index.html">Database Library</a> &nbsp;&#8250;&nbsp;
Database Utilities Class
</td>
<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="www.codeigniter.com/user_guide/" />Search User Guide&nbsp; <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" />&nbsp;<input type="submit" class="submit" name="sa" value="Go" /></form></td>
</tr>
</table>
<!-- END BREADCRUMB -->
<br clear="all" />
<!-- START CONTENT -->
<div id="content">
<h1>Database Utilities Class</h1>
<p>The Database Utilities Class contains functions that help you manage your database.</p>
<p class="important"><strong>Important:</strong>&nbsp; This class must be initialized independently since it is a separate class from the main Database class.
More info below...</p>
<h2>Initializing the Utilities Class</h2>
<p>To initialize this class please use the following code:</p>
<code>$this->load->dbutil()</code>
<p>You can also autoload this class from within your <dfn>config/autoload.php</dfn> file by specifying <kbd>dbutil</kbd> in the <samp>$autoload['libraries']</samp> array.</p>
<p>Once initialized you will access the functions using the <dfn>$this->dbutil</dfn> object:</p>
<code>$this->dbutil->some_function()</code>
<h2>$this->dbutil->create_database('db_name')</h2>
<p>Permits you to create a database using the name specified in the first parameter. Returns TRUE/FALSE based on success or failure:</p>
<code>if ($this->dbutil->create_database('my_db'))<br />
{<br />
&nbsp;&nbsp;&nbsp; echo 'Database created!';<br />
}</code>
<h2>$this->dbutil->drop_database('table_name')</h2>
<p>Permits you to drop a database using the table name specified in the first parameter. Returns TRUE/FALSE based on success or failure:</p>
<code>if ($this->dbutil->drop_database('my_db'))<br />
{<br />
&nbsp;&nbsp;&nbsp; echo 'Database deleted!';<br />
}</code>
<h2>$this->dbutil->list_databases()</h2>
<p>Returns an array of database names:</p>
<code>
$dbs = $this->dbutil->list_databases();<br />
<br />
foreach($dbs as $db)<br />
{<br />
&nbsp;&nbsp;&nbsp; echo $db;<br />
}</code>
<h2>$this->dbutil->optimize_table('table_name');</h2>
<p>Permits you to optimize a table using the table name specified in the first parameter. Returns TRUE/FALSE based on success or failure:</p>
<code>
if ($this->dbutil->optimize_table('table_name'))<br />
{<br />
&nbsp;&nbsp;&nbsp; echo 'Success!'<br />
}
</code>
<p><strong>Note:</strong> Not all database platforms support table optimization.</p>
<h2>$this->dbutil->repair_table('table_name');</h2>
<p>Permits you to repair a table using the table name specified in the first parameter. Returns TRUE/FALSE based on success or failure:</p>
<code>
if ($this->dbutil->optimize_table('table_name'))<br />
{<br />
&nbsp;&nbsp;&nbsp; echo 'Success!'<br />
}
</code>
<p><strong>Note:</strong> Not all database platforms support table repairs.</p>
<h2>$this->dbutil->optimize_database();</h2>
<p>Permits you to optimize the database your DB class is currently connected to. Returns an array containing the returned status messages or FALSE on failure.</p>
<code>
$result = $this->dbutil->optimize_databas();<br />
<br />
if ($result !== FALSE)<br />
{<br />
&nbsp;&nbsp;&nbsp; print_r($result);<br />
}
</code>
<p><strong>Note:</strong> Not all database platforms support table optimization.</p>
<h2>$this->dbutil->cvs_from_result($db_result)</h2>
<p>Permits you to generate a CVS file from a query result. The first parameter of the function must contain the result object from your query.
Example:</p>
<code>
$this->load->dbutil();<br />
<br />
$query = $this->db->query("SELECT * FROM mytable");<br />
<br />
echo $this->dbutil->cvs_from_result($query);
</code>
<p>The second and third parameters allows you to
set the delimiter and newline character. By default tabs are used as the delimiter and "\n" is used as a new line. Example:
<code>
$delimiter = ",";<br />
$newline = "\r\n";<br />
<br />
echo $this->dbutil->cvs_from_result($query, $delimiter, $newline);
</code>
<p class="important"><strong>Important:</strong>&nbsp; This function will NOT write the CVS file for you. It simply creates the CVS layout.
If you need to write the file use the <a href="../helpers/file_helper.html">File Helper</a>.</p>
<h2>$this->dbutil->xml_from_result($db_result)</h2>
<p>Permits you to generate an XML file from a query result. The first parameter expects a query result object, the second
may contain an optional array of config parameters. Example:</p>
<code>
$this->load->dbutil();<br />
<br />
$query = $this->db->query("SELECT * FROM mytable");<br />
<br />
$config = array (<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'root'&nbsp;&nbsp;&nbsp; => 'root',<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'element' => 'element', <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'newline' => "\n", <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';tab'&nbsp;&nbsp;&nbsp;&nbsp;=> "\t"<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br />
<br />
echo $this->dbutil->cvs_from_result($query, $config);
</code>
<p class="important"><strong>Important:</strong>&nbsp; This function will NOT write the CVS file for you. It simply creates the CVS layout.
If you need to write the file use the <a href="../helpers/file_helper.html">File Helper</a>.</p>
<h2>$this->dbutil->export()</h2>
<p>Permits you to export your database or any desired tables. Export data can be downloaded to your desktop, archived to your
server, or simply displayed. Archived files can be compressed.
</div>
<!-- END CONTENT -->
<div id="footer">
<p>
Previous Topic:&nbsp;&nbsp;<a href="call_function.html">Custom Function Calls</a>
&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
Next Topic:&nbsp;&nbsp;<a href="caching.html">Database Caching Class</a>
<p>
<p><a href="http://www.codeigniter.com">Code Igniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2006 &nbsp;&middot;&nbsp; <a href="http://www.pmachine.com">pMachine, Inc.</a></p>
</div>
</body>
</html>