為什麼mysql資料庫欄位要定義為NOT NULL

2021-09-24 19:22:21 字數 549 閱讀 9701

在mysql資料庫中「null」和「空值」是不一樣的。null是一種比較特殊的資料型別,這也可以解釋為什麼字段設定為not null,卻仍然可以插入空值。設定了not null之後便不能插入null值了,但仍然可以插入像 ' ' 這樣的空值。另外空值是不占用空間的,而null需要占用空間。

在平常我們設計資料表時,如果是索引字段,一定要定義為not null。因為null值會影響cordinate統計,影響優化器對索引的選擇,索引效率會下降很多。雖然表中允許空(null)列,但其它欄位也盡量定義為not null。mysql在進行比較的時候,null 會參與字段比較。因為null是一種比較特殊的資料型別。資料庫在處理的時候,需要進行特殊的處理。如此的話,就會增加資料庫處理記錄的複雜性。當表中有比較多的空字段時,在同等條件下,資料庫處理的效能會降低許多。

1.通過設定預設值的形式,定義時使用default ''或default 0,來避免空字段的產生。

2.若一張表中,允許為空的列比較多,接近表全部列數的三分之一。而且,  這些列在大部分情況下,都是可有可無的。若資料庫管理員遇到這種情況,可以考慮另外建立一張副表,以儲存這些列。

為什麼要選擇MySQL資料庫

什麼是mysql?mysql是乙個多使用者 多執行緒的sql資料庫,是乙個客戶機 伺服器結構的應用,它由乙個伺服器守護程式mysqld和很多不同的客戶程式和庫組成。sql structured query language結構化查詢語言 是目前使用最廣的並且是標準的資料庫語言。sql語言使得訪問或更...

為什麼要學資料庫

資料庫系統 database system 是由資料庫及其管理軟體組成的系統。資料庫就是儲存資料的地方,穿鷗汀意義不包括檔案 資料庫是由兩部分組成 db資料庫本身,我們看不見的 資料庫管理系統 現在世界上資料庫分為三類 rdbms rdbms關聯式資料庫管理系統 relational databas...

什麼叫資料庫,為什麼要安裝資料庫?

有關資料庫有嚴格的定義,本文結合自己的理解,通俗簡短的介紹下資料庫 首先我們想一想,電腦的組成上有一大塊的硬碟是用來幹什麼的?用來存放資料的。這個硬碟就相當於乙個大型倉庫,裡面空空如也,就是乙個大的空著的空間。一般是誰能往裡面放置東西呢?各種軟體。然而每一種軟體存放資料的方式是不一樣的,比如對於同樣...