आम तौर पर आप ऐसा CHECK बाधा के साथ करेंगे:
foo_test VARCHAR(50) NOT NULL CHECK (foo_test <> '')
संस्करण 8.0 से पहले MySQL के पास बाधाओं के लिए सीमित समर्थन था। MySQL संदर्भ मैनुअल से :
<ब्लॉकक्वॉट>CHECK क्लॉज को पार्स किया जाता है लेकिन सभी स्टोरेज इंजनों द्वारा अनदेखा किया जाता है।
यदि आपको किसी पुराने संस्करण से चिपके रहना है तो triggers का उपयोग करें। एक समाधान के रूप में, जैसा कि लोगों ने बताया है।
भविष्य में, आप PostgreSQL पर एक नज़र डालना चाहते हैं , जिसे डेटा अखंडता के लिए बेहतर समर्थन माना जाता है ( के बीच अन्य चीजें ) कई लोगों द्वारा ।