Database 數據庫

優化你的 MySQL 數據庫運作

要提高一個 PHP 應用系統的效能,除了優化算法、原碼外,還有很多方面可以著手,資深軟件工程師 Mike Willbanks 發表了一篇文章討論優化 MySQL 數據庫的運作,包括懶惰連接、不做無謂的查詢、小心規劃數據庫結構等。雖然這篇文章針對 MySQL,不過提及的技巧在其他數據庫引擎上同樣有用。


SQL 注入攻擊新招

相信很多 PHP 的開發者都認識 SQL 注入攻擊,我們之前在「不可不知的 PHP 安全技巧」也曾經介紹過,最近 Gareth Heyes 在他的個人網誌提到一種新的 SQL 注入攻擊招式,Gareth Heyes 稱它做「SQL 反射注入攻擊」,很多人可能都會忽略。


PHP5, Sqlite 及 Windows

Turn up the Crank 有一位作者分享他使用 PHP5、Sqlite、Windows 的經驗。作者需要一個數據庫儲存資料,由於涉及的資料處理工作很簡單,所以他選擇了 Sqlite,結果他發現:

  1. SQLite 3 無法與 PHP 相容:他不斷遇到一個錯誤訊息「PHP Warning: sqlite_open() [function.sqlite-open]: file is encrypted or is not a database」,網上有關 Sqlite 3 與 PHP 共用的文件十分缺乏,最後他終於發現 PHP 尚未支援 SQLite 3,對於 SQLite 3 已經推出了超過兩年仍未得到 PHP 的支援,作者感到大惑不解。


簡單易懂的介紹 SQL

學習一種語言最有效的方法是多做練習,學習 SQL 也是一樣,A Gentle Introduction to SQL 是一個讓你實際輸入及執行 SQL 語句的教學網站,他們提供一些編寫 SQL 的有用技巧,大量不同深淺程度的練習(附有答案),還有小型項目給你盡情發揮你的 SQL 才華。

這個網站提供多種語言版本,其中包括中文,但只有部分頁面完成翻譯,而且都是簡體字,但對於閱讀外語有困難的人不失為一個折衷方案。 <