Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

MySQL में ऋणात्मक संख्याओं को रोकें?

<घंटा/>

MySQL में ऋणात्मक संख्याओं को रोकने के लिए, आपको INT UNSIGNED का उपयोग करने की आवश्यकता है। मान लें कि आपने एक स्तंभ के साथ एक तालिका बनाई है जैसे कि int यानी UserGameScores यहाँ

mysql> तालिका बनाएं रोकेंNegativeNumberDemo -> ( -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> UserName varchar(20), -> UserGameScores int -> );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.74 सेकंड)

अब यदि आपको इसमें ऋणात्मक संख्याओं को रोकने की आवश्यकता है, तो उसी कॉलम को INT UNSIGNED के साथ संशोधित करें

mysql> तालिका बदलें रोकेंNegativeNumberDemo कॉलम संशोधित करें UserGameScores INT UNSIGNED NOT NULL;क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (3.32 सेकंड) रिकॉर्ड:0 डुप्लिकेट:0 चेतावनियाँ:0

अब एक बार फिर तालिका विवरण की जाँच करें।

क्वेरी इस प्रकार है

mysql> desc preventNegativeNumberDemo;

निम्न आउटपुट है

<पूर्व>+----------------+------------------+----------+--- ---+-----------+----------------+| फील्ड | प्रकार | शून्य | कुंजी | डिफ़ॉल्ट | अतिरिक्त | -+-----------+----------------+| उपयोगकर्ता आईडी | इंट(11) | नहीं | पंचायती राज | नल | auto_increment || उपयोगकर्ता नाम | वर्कर(20) | हाँ | | नल | || UserGameScores | इंट(10) अहस्ताक्षरित | नहीं | | नल | | +---------------+----------------+3 पंक्तियों में सेट (0.00 सेकंड)

अब यदि आप UserGameScores कॉलम के लिए ऋणात्मक संख्या सम्मिलित करने का प्रयास करते हैं तो MySQL एक त्रुटि देता है क्योंकि हमने इसे INT UNSIGNED के रूप में सेट किया है। आइए हम ऋणात्मक संख्या सहित कुछ मान सम्मिलित करें

mysql> रोकथाम में डालेंNegativeNumberDemo(UserName,UserGameScores) मान ('लैरी', 0); क्वेरी ठीक है, 1 पंक्ति प्रभावित (1.20 सेकंड) mysql> रोकने में डालेंNegativeNumberDemo(UserName,UserGameScores) मान ('माइक', -1 );त्रुटि 1264 (22003):पंक्ति 1mysql पर कॉलम 'UserGameScores' के लिए सीमा मान से बाहर> रोकथाम में डालेंNegativeNumberDemo(UserName,UserGameScores) मान ('सैम',-100);त्रुटि 1264 (22003):के लिए सीमा मूल्य से बाहर पंक्ति 1mysql पर कॉलम 'UserGameScores'> रोकने में डालेंNegativeNumberDemo(UserName,UserGameScores) मान ('जॉन',100); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.84 सेकंड) mysql> रोकने में डालेंNegativeNumberDemo(UserName,UserGameScores) मान ('बॉब') ,200);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.48 सेकंड)

जब हम ऋणात्मक मान डालने का प्रयास करते हैं तो उपरोक्त त्रुटि को देखें।

अब चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। केवल धनात्मक अंक ही डाले जाएंगे

mysql> को रोकें *निगेटिव नंबर डेमो से चुनें;

निम्न आउटपुट है

<पूर्व>+----------+----------+----------------+| उपयोगकर्ता आईडी | उपयोगकर्ता नाम | UserGameScores |+-----------+----------+----------------+| 1 | लैरी | 0 || 2 | जॉन | 100 || 3 | बॉब | 200 |+-----------+----------+----------------+3 पंक्तियाँ सेट में (0.00 सेकंड)
  1. MySQL में संख्याओं के साथ गोल रिकॉर्ड

    संख्या को गोल करने के लिए, MySQL ROUND() का उपयोग करें। आइए पहले एक टेबल बनाएं - );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (1.18 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल वैल्यू में डालें ( 980.89);क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) चयन कथन का उपयोग करके तालिका

  1. MySQL में केवल अक्षरांकीय स्ट्रिंग से क्रमित करें?

    अल्फ़ान्यूमेरिक स्ट्रिंग से केवल संख्याओं को क्रमबद्ध करने के लिए, ORDER BY RIGHT() का उपयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable1948 (StudentCode varchar(20));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.00 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable1948 मानों

  1. C . में ऋणात्मक संख्याओं का मापांक

    यहां हम देखेंगे कि यदि हम मापांक प्राप्त करने के लिए ऋणात्मक संख्याओं का उपयोग करते हैं तो परिणाम क्या होगा। आइए विचार प्राप्त करने के लिए निम्नलिखित कार्यक्रम और उनके आउटपुट देखें। उदाहरण #include<stdio.h> int main() {    int a = 7, b = -10, c = 2;    printf("Result: