在PostgreL中,如何使列A或列B必須為非null?
I有一個(gè)帶有“電子郵件地址”和“PMail地址”列的表。用戶必須輸入電子郵件或P郵件地址。如果我將兩者都設(shè)置為不為空,則必須同時(shí)填寫這兩個(gè)地址才能創(chuàng)建記錄。
解答動(dòng)態(tài)
你需要檢查一下桌子水平c約束:
alter tablegt;添加約束\u email check(email不為null或
pmail不為null); 如果只允許輸入一個(gè),但不允許兩者:
alter tablegt;添加約束\u電子郵件檢查(電子郵件為空lt;名稱>;(。。。柱。。。約束email check(email不為null或
pmail不為null));I喜歡對(duì)這個(gè):
alter表_table add constraint check \u至少\u一個(gè)電子郵件檢查(num \u nonnulls(email,
pmail)gt;0; If您只需要一個(gè)非空值更改>;0到=1- End
免責(zé)聲明:
本頁內(nèi)容僅代表作者本人意見,若因此產(chǎn)生任何糾紛由作者本人負(fù)責(zé),概與琴島網(wǎng)公司無關(guān)。本頁內(nèi)容僅供參考,請(qǐng)您根據(jù)自身實(shí)際情況謹(jǐn)慎操作。尤其涉及您或第三方利益等事項(xiàng),請(qǐng)咨詢專業(yè)人士處理。