關係型資料庫中的字段預設值 不可為空 唯一索引約束的好處和壞處是什麼?

時間 2021-05-30 00:00:22

1樓:

我覺得這個跟具體的程式,具體的業務邏輯有關係。我自己設計表的時候,設定字段預設值,一般是為了防止在寫插入語句時少寫了幾個在之後的查詢時要用的字段。而設定了預設值之後,在前面的程式裡插入時還可以偷懶少寫點內容。

不可為空和唯一性約束也類似,多數時候是因為業務邏輯要求不能為空或者不能重複。

壞處嘛,預設值和不可為空的影響基本可以忽略了,唯一約束的影響在於插入的時候它要對記錄做個檢查,略微有點開銷。不該加唯一約束的地方加了的話,在插資料的時候可能還會報個錯……

2樓:mysqlops

不是特別清楚此問題,大致理解如下:

1.欄位預設值:針對每個欄位都有自己的預設值,較有利於進行統計和分析,以及方便程式邏輯操作;

2.不可為空:若是該字段建立為索引情況下,且允許為NULL,則儲存多個值,若是不允許為空,可能用某乙個值替代,則索引值更少,以及部分資料庫產品不支援欄位為NULL情況下建立索引(特別是早期的資料庫產品)

3.唯一性約束:那是指有資料唯一性要求的情況下,可以借助資料庫的方式判斷是否存在重複值,而避免程式去判斷,減少事務的處理等

陣列中的元素是否有預設值?

張強 看分配在哪兒。首先程式執行,作業系統會先分配一塊滿足程式大小的空白記憶體,這塊記憶體全是0,然後引導程式。如果是全域性變數,那麼使用的是全域性變數區,也就是空白記憶體,所以在程式載入後,預設值為0 如果是new出來的,那麼使用的是堆區,這個區域也是經過作業系統malloc選擇的一塊空白區域,預...

請問分析型資料庫是什麼?它和關係型資料庫有什麼區別?

蔡志巨集 分析型資料庫通常指的是多維資料倉儲。OLAP。典型的包括 Essbase,TM1,BW,SQL Server AS,智達方通 Intcube OLAP等。關係型資料庫 RDBMS,OLTP,適合搭建事務型交易型應用,簡單來講,擅長記流水賬。但不擅長做資料分析,因為其資料的結構性要弱於資料倉...

文件型資料庫相對關聯式資料庫的缺點是什麼

iammutex 首先,一致性問題和是否採用文件型儲存是沒有關係的。一致性問題是由於系統既要保證分布式又要求高效能導致的。說白了就是資料不同步,目前文件型資料庫如MongoDB並沒有說在一致性上有多大問題。當前的文件型資料庫以MongoDB和CouchDB發展最好,而二者除了在儲存結構上都是文件型外...