程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MYSQL入門知識 >> 你知道MySQL10條鮮為人知的技巧嗎

你知道MySQL10條鮮為人知的技巧嗎

編輯:MYSQL入門知識
 

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

以XML格式查看查詢結果

通過使用傳統—xml 選項調用MySQL命令行客戶程序,你可以以XML格式(而不是傳統的列表形式)來查看MySQL查詢結果。如果你打算將查詢輸出與其它程序集成在一起,這一技巧非常有用,這裡是一個例子:

表A

shell> mysql --xml

mysql> SELECT * FROM test.stories;
<?xml version="1.0"?>

<resultset statement="SELECT * FROM test.stories">
<row>
<id>1</id>
<headline>This is a test</headline>
<tstamp>2005-07-28 00:14:57</tstamp>
</row>

<row>
<id>2</id>
<headline>This is the second test</headline>
<tstamp>2005-07-28 00:15:11</tstamp>
</row>
</resultset>
2 rows 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)

 

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved