萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL十條特殊技巧

MySQL十條特殊技巧

   MySQL易學易用,附帶豐富的技術文檔,這兩個因素使之被廣泛應用。然而,隨著MySQL發展加快,即使一個MySQL老手有時也會為該軟件出其不意的功能感歎。本文將為你介紹這些不為人知的特性。

    以XML格式查看查詢結果

  通過使用傳統—xml 選項調用MySQL命令行客戶程序,你可以以XML格式(而不是傳統的列表形式)來查看。

    MySQL查詢結果

  如果你打算將查詢輸出與其它程序集成在一起,這一技巧非常有用,這裡是一個例子:

  表A

  shell> mysql --xml

  mysql> SELECT * FROM test.stories;

  1

  This is a test

  2

  This is the second test

  2rows in set (0.11 sec)

    快速重建索引

  通常情況下,如果你想改變服務器的全文搜索變量,你需要在表格中重新建立全文索引,以確保你的更新得到映射。這一操作將會花費大量的時間,特別是如果你需要處理很多數據的時候。一種快速的解決。

  方法是使用REPAIR TABLE命令,以下為演示過程:

  表B

  mysql> REPAIR TABLE content QUICK;

  +-----------+--------+----------+----------+

  | Table| Op| Msg_type | Msg_text |

  +-----------+--------+----------+----------+

  | content| repair | status| OK|

  +-----------+--------+----------+----------+

  1 row in set (0.05 sec)

    壓縮一定的表格類型

  如果你處理的是只讀MyISAM表格,MySQL允許你將其壓縮以節省磁盤空間。對此可以使用包括myisampack,如下所示:

  表C

  shell> myisampackmovies.MYI

  Compressing movies.MYD: (146 records)

  - Calculating statistics

  - Compressing file

  41.05%

    使用傳統SQL

  MySQL支持SQL查詢中的傳統用法,支持IF與CASE結構。以下是一個簡單的例子:

  表D

  mysql> SELECT IF (priv=1, 'admin', 'guest')

  As usertype FROM privs WHERE username = 'joe';

  +----------+

  | usertype |

  +----------+

  | admin|

  +----------+

  1 row in set (0.00 sec)

    以CSV格式輸出表格數據

  MySQL 輸出文件包含一個全部SQL命令列表。如果你想將輸出文件導入到MySQL,這一功能非常實用,但如果目標程序(比如Excel)不能與SQL相互通訊,這一方法將行不通。在這種情況下,可以通過告訴MySQL ,以CSV格式建立輸出文件,這種CSV格式很方便地導入到絕大部分的程序。這裡演示了 mysqldump的操作過程:

  shell> mysqldump -T .

  --fields-terminated-by=", " mydbmytable

  這將在當前目錄中生成一個文本文件,包含來自mydb.mytable列表中以逗號為間隔符的記錄。

copyright © 萬盛學電腦網 all rights reserved