<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 數據庫工具類 數據庫工具類提供了一些方法用于幫助你管理你的數據庫。 [TOC=2,3] ## 初始化工具類 >[danger] 重要 > 由于工具類依賴于數據庫驅動器,為了初始化工具類,你的數據庫驅動器必須已經運行。 加載工具類的代碼如下: ~~~ $this->load->dbutil(); ~~~ 如果你想管理的不是你正在使用的數據庫,你還可以傳另一個數據庫對象到數據庫工具類的加載方法: ~~~ $this->myutil = $this->load->dbutil($this->other_db, TRUE); ~~~ 上例中,我們通過第一個參數傳遞了一個自定義的數據庫對象,第二個參數表示方法將返回 dbutil 對象, 而不是直接賦值給?$this->dbutil?。 > 注解 > 兩個參數都可以獨立使用,如果你只想傳第二個參數,可以將第一個參數置空。 一旦初始化結束,你就可以使用?$this->dbutil?對象來訪問它的方法: ~~~ $this->dbutil->some_method(); ~~~ ## 使用數據庫工具類 ### 獲取數據庫名稱列表 返回一個包含所有數據庫名稱的列表: ~~~ $dbs = $this->dbutil->list_databases(); foreach ($dbs as $db) { echo $db; } ~~~ ### 判斷一個數據庫是否存在 有時我們需要判斷某個數據庫是否存在,可以使用該方法。方法返回布爾值 TRUE/FALSE 。例如: ~~~ if ($this->dbutil->database_exists('database_name')) { // some code... } ~~~ > 注解 > 使用你自己的數據庫名替換?database_name?,該方法區分大小寫。 ### 優化表 根據你指定的表名來優化表,根據成敗返回 TRUE 或 FALSE ~~~ if ($this->dbutil->optimize_table('table_name')) { echo 'Success!'; } ~~~ > 注解 > 不是所有的數據庫平臺都支持表優化,通常使用在 MySQL 數據庫上。 ### 修復表 根據你指定的表名來修復表,根據成敗返回 TRUE 或 FALSE ~~~ if ($this->dbutil->repair_table('table_name')) { echo 'Success!'; } ~~~ > 注解 > 不是所有的數據庫平臺都支持表修復。 ### 優化數據庫 允許你優化數據庫類當前正在連接的數據庫。返回一個數組,包含數據庫狀態信息,失敗時返回 FALSE 。 ~~~ $result = $this->dbutil->optimize_database(); if ($result !== FALSE) { print_r($result); } ~~~ > 注解 > 不是所有的數據庫平臺都支持數據庫優化,通常使用在 MySQL 數據庫上。 ### 將查詢結果導出到 CSV 文檔 允許你從查詢結果生成 CSV 文檔,第一個參數必須是查詢的結果對象。例如: ~~~ $this->load->dbutil(); $query = $this->db->query("SELECT * FROM mytable"); echo $this->dbutil->csv_from_result($query); ~~~ 第二、三、四個參數分別為分隔符、換行符和每個字段包圍字符,默認情況下,分隔符為逗號,換行符為 "n" , 包圍字符為雙引號。例如: ~~~ $delimiter = ","; $newline = "\r\n"; $enclosure = '"'; echo $this->dbutil->csv_from_result($query, $delimiter, $newline, $enclosure); ~~~ 重要 該方法并不寫入 CSV 文檔,它只是簡單的返回 CSV 內容,如果你需要寫入到文件中, 你可以使用?[文件輔助函數](http://codeigniter.org.cn/user_guide/helpers/file_helper.html)?。 ### 將查詢結果導出到 XML 文檔 允許你從查詢結果生成 XML 文檔,第一個參數為查詢的結果對象,第二個參數可選,可以包含一些的配置參數。例如: ~~~ $this->load->dbutil(); $query = $this->db->query("SELECT * FROM mytable"); $config = array ( 'root' => 'root', 'element' => 'element', 'newline' => "\n", 'tab' => "\t" ); echo $this->dbutil->xml_from_result($query, $config); ~~~ 重要 該方法并不寫入 XML 文檔,它只是簡單的返回 XML 內容,如果你需要寫入到文件中, 你可以使用?[文件輔助函數](http://codeigniter.org.cn/user_guide/helpers/file_helper.html)?。 ## 備份你的數據庫 ### 數據備份說明 允許你備份完整的數據庫或指定的表。備份的數據可以壓縮成 Zip 或 Gzip 格式。 注解 該功能只支持 MySQL 和 Interbase/Firebird 數據庫。 注解 對于 Interbase/Firebird 數據庫,只能提供一個備份文件名參數。 $this->dbutil->backup('db_backup_filename'); 注解 限于 PHP 的執行時間和內存限制,備份非常大的數據庫應該不行。如果你的數據庫非常大, 你可以直接使用命令行進行備份,如果你沒有 root 權限的話,讓你的管理員來幫你備份。 ### 使用示例 ~~~ // Load the DB utility class $this->load->dbutil(); // Backup your entire database and assign it to a variable $backup = $this->dbutil->backup(); // Load the file helper and write the file to your server $this->load->helper('file'); write_file('/path/to/mybackup.gz', $backup); // Load the download helper and send the file to your desktop $this->load->helper('download'); force_download('mybackup.gz', $backup); ~~~ ### 設置備份參數 備份參數為一個數組,通過第一個參數傳遞給?backup()?方法,例如: ~~~ $prefs = array( 'tables' => array('table1', 'table2'), // Array of tables to backup. 'ignore' => array(), // List of tables to omit from the backup 'format' => 'txt', // gzip, zip, txt 'filename' => 'mybackup.sql', // File name - NEEDED ONLY WITH ZIP FILES 'add_drop' => TRUE, // Whether to add DROP TABLE statements to backup file 'add_insert' => TRUE, // Whether to add INSERT data to backup file 'newline' => "\n" // Newline character used in backup file ); $this->dbutil->backup($prefs); ~~~ ### 備份參數說明 | 參數 | 默認值 選項 | 描述 | | --- | --- | --- | --- | | **tables** | empty array | None | 你要備份的表,如果留空將備份所有的表。 | | **ignore** | empty array | None | 你要忽略備份的表。 | | **format** | gzip | gzip, zip, txt | 導出文件的格式。 | | **filename** | the current date/time | None | 備份文件名。如果你使用了 zip 壓縮這個參數是必填的。 | | **add_drop** | TRUE | TRUE/FALSE | 是否在導出的 SQL 文件里包含 DROP TABLE 語句 | | **add_insert** | TRUE | TRUE/FALSE | 是否在導出的 SQL 文件里包含 INSERT 語句 | | **newline** | "\n" | "\n", "\r", "\r\n" | 導出的 SQL 文件使用的換行符 | | **foreign_key_checks** | TRUE | TRUE/FALSE | 導出的 SQL 文件中是否繼續保持外鍵約束 | ## 類參考 classCI_DB_utility backup([$params = array()]) 參數: * **$params**?(array) -- An associative array of options 返回: raw/(g)zipped SQL query string 返回類型: string 根據用戶參數執行數據庫備份。 database_exists($database_name) 參數: * **$database_name**?(string) -- Database name 返回: TRUE if the database exists, FALSE otherwise 返回類型: bool 判斷數據庫是否存在。 list_databases() 返回: Array of database names found 返回類型: array 獲取所有的數據庫名稱列表。 optimize_database() 返回: Array of optimization messages or FALSE on failure 返回類型: array 優化數據庫。 optimize_table($table_name) 參數: * **$table_name**?(string) -- Name of the table to optimize 返回: Array of optimization messages or FALSE on failure 返回類型: array 優化數據庫表。 repair_table($table_name) 參數: * **$table_name**?(string) -- Name of the table to repair 返回: Array of repair messages or FALSE on failure 返回類型: array 修復數據庫表。 csv_from_result($query[,?$delim = ',?'[,?$newline = "n"[,?$enclosure = '"']]]) 參數: * **$query**?(object) -- A database result object * **$delim**?(string) -- The CSV field delimiter to use * **$newline**?(string) -- The newline character to use * **$enclosure**?(string) -- The enclosure delimiter to use 返回: The generated CSV file as a string 返回類型: string 將數據庫結果對象轉換為 CSV 文檔。 xml_from_result($query[,?$params = array()]) 參數: * **$query**?(object) -- A database result object * **$params**?(array) -- An associative array of preferences 返回: The generated XML document as a string 返回類型: string 將數據庫結果對象轉換為 XML 文檔。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看