MySQL 內建的全文檢索搜尋 MATCH 和 AGAINST

SQL 要搜尋通常就是使用 LIKE,但是 LIKE 很慢,MySQL 本身就有內建 FULLTEXT Serch 可以使用~

  • 註:內容多的話,建議還是使用 Sphinx、Solr、ElasticSearch 等等

閱讀全文〈MySQL 內建的全文檢索搜尋 MATCH 和 AGAINST〉

使用 SchemaCrawler 將 ERD 做最簡化的線圖

當資料庫 Table 太多,相關的 PK、FK 就會很多,畫出 ERD 的線圖自然會複雜到看不懂

想要盡量把 ERD 的線拉直,盡量不要看起來飛來飛去的,可以靠 SchemaCrawler 來直接生成

閱讀全文〈使用 SchemaCrawler 將 ERD 做最簡化的線圖〉

PHP PDO Prepare Debug 印出 SQL 語法

PHP 都建議使用 Prepare 來避免 SQL injection 等等的,但是在 Debug 的時候,最困擾的就是如何把當下 SQL 語法印出來。

此套件支援 Debug 主要是可以將 SQL 語法印出。

閱讀全文〈PHP PDO Prepare Debug 印出 SQL 語法〉

MySQL SQL 語法 需要注意 型態自動轉換問題

MySQL SELECT、UPDATE、DELETE 加上 WHERE 條件,想說應該就沒有問題,但是若型態不對,可能會出現意想不到的結果。

閱讀全文〈MySQL SQL 語法 需要注意 型態自動轉換問題〉

Babelfish:讓 PostgreSQL 接受 SQL Server 語法的專案

AWS Open Source Babelfish 專案,這個專案主要目的是讓原本建立在 SQL Server 的應用程式,可以簡單的轉換到 PostgreSQL 上。

閱讀全文〈Babelfish:讓 PostgreSQL 接受 SQL Server 語法的專案〉

MySQL Log 所有 SQL 語法

MySQL 最常使用的是 Log Slow Query,但是除了 Slow Query 外,還有情況是要抓不知哪來的 SQL 語法,或者要查是哪些語法一起來造成 Lock 等等的問題,所以想要知道 MySQL 到底都接收到哪些 SQL Query?

要怎麼將所有的 SQL 語法都記錄下來呢?

閱讀全文〈MySQL Log 所有 SQL 語法〉