MySQL設(shè)計局限與折衷 |
發(fā)布時間: 2012/8/30 17:32:01 |
當(dāng)使用MyISAM存儲引擎時,MySQL使用極快速的表鎖定,以便允許多次讀或一次寫。使用該存儲引擎的最大問題出現(xiàn)在同一個表中進(jìn)行混合穩(wěn)定數(shù)據(jù)流更新與慢速選擇。如果這只是某些表的問題,你可以使用另一個存儲引擎。參見第15章:存儲引擎和表類型。 MySQL可以使用事務(wù)表和非事務(wù)表。為了更容易地讓非事務(wù)表順利工作(如果出現(xiàn)問題不能回滾),MySQL采用下述規(guī)則。請注意這些規(guī)則只適用于不運行在嚴(yán)格模式下或為INSERT或UPDATE使用IGNORE規(guī)定程序時。 電腦技巧www.boydavid.com · 所有列有默認(rèn)值。請注意當(dāng)運行在嚴(yán)格SQL模式(包括TRADITIONAL SQL模式)時,必須為NOT NULL列指定默認(rèn)值。 電腦軟件www.boydavid.com · 如果向列內(nèi)插入不合適的或超出范圍的值,MySQL將該列設(shè)定為“最好的可能的值”,而不是報告錯誤。對于數(shù)字值,為0、可能的最小值或最大值。對于字符串,為空字符串或列內(nèi)可以保存的字符串。請注意當(dāng)運行在嚴(yán)格模式或TRADITIONAL SQL模式時該行為不 適用。
· 所有表達(dá)式的計算結(jié)果返回一個表示錯誤狀況的信號。例如,1/0返回NULL。(使用ERROR_FOR_DIVISION_BY_ZERO SQL模式可以更改該行為)。 如果正使用非事務(wù)表,不應(yīng)該使用MySQL來檢查列的內(nèi)容。一般情況,最安全的(通常是最快的)方法徑是讓應(yīng)用程序確保只向數(shù)據(jù)庫傳遞合法值。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |