MySQL में UNSIGNED कॉलम में नकारात्मक मान डालने का प्रयास करने पर त्रुटि होती है।
एक UNSIGNED कॉलम वाली टेबल बनाते हैं:
CREATE TABLE UnsignedDemo (
Id INT UNSIGNED
);
नकारात्मक मान डालने का प्रयास:
INSERT INTO UnsignedDemo VALUES (-100);
त्रुटि:
ERROR 1264 (22003): Out of range value for column 'Id' at row 1
सकारात्मक मान ठीक काम करते हैं:
INSERT INTO UnsignedDemo VALUES (100); INSERT INTO UnsignedDemo VALUES (1000); INSERT INTO UnsignedDemo VALUES (0); INSERT INTO UnsignedDemo VALUES (100000000);
रिकॉर्ड देखें:
SELECT * FROM UnsignedDemo;
आउटपुट
+-----------+ | Id | +-----------+ | 100 | | 1000 | | 0 | | 100000000 | +-----------+
महत्वपूर्ण बिंदु:
UNSIGNEDकेवल गैर-नकारात्मक मान (0 और धनात्मक) अनुमति देता है- रेंज: 0 से 4,294,967,295 (INT UNSIGNED के लिए)
- ऑटो-इन्क्रीमेंट कॉलम के लिए
UNSIGNEDउपयोग करना अच्छा अभ्यास है - SQL मोड
STRICT_TRANS_TABLESसक्षम होने पर त्रुटि फेंकी जाती है