sql允許null值是什么意思 值不能為null是啥意思?
值不能為null是啥意思?通常我們會(huì)將字段屬性設(shè)置為不為空,因此當(dāng)您插入數(shù)據(jù)時(shí),如果對(duì)應(yīng)的字段為空,則會(huì)提示您出現(xiàn)空錯(cuò)誤。電腦出現(xiàn)值不能null?字段不能為空。通常我們將字段屬性設(shè)置為不為null,因
值不能為null是啥意思?
通常我們會(huì)將字段屬性設(shè)置為不為空,因此當(dāng)您插入數(shù)據(jù)時(shí),如果對(duì)應(yīng)的字段為空,則會(huì)提示您出現(xiàn)空錯(cuò)誤。
電腦出現(xiàn)值不能null?
字段不能為空。通常我們將字段屬性設(shè)置為不為null,因此在插入數(shù)據(jù)時(shí),如果對(duì)應(yīng)的字段為null,則會(huì)提示null錯(cuò)誤。解決方法:在字段設(shè)置界面,勾選如圖所示的復(fù)選框,將字段設(shè)置為允許為空。如果無(wú)法修改字段屬性,則只能使用一些替換方法。如果字段類(lèi)型是使用字符或字符串、“”或“”,則不會(huì)提示空錯(cuò)誤。
數(shù)據(jù)庫(kù)涉及到金額的字段到底要不要給默認(rèn)值能不能默認(rèn)null?
這個(gè)問(wèn)題不應(yīng)該是技術(shù)和產(chǎn)品之間的競(jìng)爭(zhēng)。相反,我認(rèn)為應(yīng)該從兩個(gè)方面來(lái)考慮:一是從技術(shù)的角度考慮理性,二是滿(mǎn)足需求。
首先,無(wú)論用戶(hù)是否填寫(xiě)運(yùn)費(fèi)字段,在計(jì)算價(jià)格時(shí)一定要加上總價(jià)。所以從技術(shù)上講,null和0之間似乎沒(méi)有太大的區(qū)別。但是,從數(shù)據(jù)庫(kù)的角度來(lái)看,一般不建議使用null作為字段的默認(rèn)值,特殊情況除外。因?yàn)槭褂胣ull作為字段值可能會(huì)帶來(lái)一些問(wèn)題。例如,對(duì)包含空值的列執(zhí)行計(jì)數(shù)統(tǒng)計(jì)不會(huì)得到空值。例如,在執(zhí)行否定查詢(xún)時(shí),不能獲取空值。還有很多問(wèn)題。所以當(dāng)使用null作為數(shù)據(jù)庫(kù)值時(shí),我們應(yīng)該考慮它是否會(huì)影響實(shí)現(xiàn)。
其次,從需求的角度來(lái)看,如果需求確實(shí)需要區(qū)分用戶(hù)沒(méi)有填寫(xiě)的情況和填寫(xiě)為0的情況,前提是有合理的理由,比如需要避免出現(xiàn)問(wèn)題時(shí)與用戶(hù)發(fā)生爭(zhēng)執(zhí)的風(fēng)險(xiǎn),那么在這種情況下,前提應(yīng)該是滿(mǎn)足需求。當(dāng)然,滿(mǎn)足要求只意味著產(chǎn)品設(shè)計(jì)最終能夠?qū)崿F(xiàn),要實(shí)施的技術(shù)方案還需要技術(shù)人員考慮,因?yàn)樵诤芏嗲闆r下,一個(gè)問(wèn)題不僅僅是零或者0,還可能影響到其他地方。技術(shù)人員不得無(wú)故否定產(chǎn)品設(shè)計(jì),產(chǎn)品人員不得過(guò)多參與技術(shù)方案。
最后,如果我想實(shí)現(xiàn)這個(gè)要求,我可以設(shè)置運(yùn)費(fèi)字段為0,但我需要添加一個(gè)標(biāo)識(shí)位來(lái)判斷是否設(shè)置它。這樣,我就不需要在價(jià)格計(jì)算中處理空值,同時(shí)也可以滿(mǎn)足要求。如果以后需要做其他相關(guān)的統(tǒng)計(jì),可以避免一些不必要的問(wèn)題。