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

MySQL में FLOAT मान को DECIMAL कॉलम में डालने पर चेतावनी कैसे देखें?


MySQL में DECIMAL कॉलम में FLOAT डालने पर चेतावनी देखना

जब आप DECIMAL कॉलम में फ्लोट मान डालते हैं जो फिट नहीं होता, तो MySQL चेतावनी देता है। SHOW WARNINGS से इसे देख सकते हैं।

उदाहरण

अस्थायी टेबल बनाएं:

mysql> create temporary table WarningDemo (
    -> Value DECIMAL
    -> );

फ्लोट मान डालें (DECIMAL डिफ़ॉल्ट स्केल 0 है):

mysql> insert into WarningDemo values(9.80);
Query OK, 1 row affected, 1 warning (0.03 sec)

चेतावनी देखें:

mysql> show warnings;

परिणाम:

+-------+------+--------------------------------------------+
| Level | Code | Message                                    |
+-------+------+--------------------------------------------+
| Note  | 1265 | Data truncated for column 'Value' at row 1 |
+-------+------+--------------------------------------------+

संग्रहीत मान:

mysql> select * from WarningDemo;
+-------+
| Value |
+-------+
|    10 |  -- 9.80 को 10 में काट दिया गया
+-------+

व्याख्या

  • DECIMAL बिना परिशुद्धता/स्केल के DECIMAL(10,0) के बराबर है (कोई दशमलव नहीं)
  • 9.80 को 10 में काट दिया जाता है (ट्रंकेट, राउंड नहीं)
  • चेतावनी कोड 1265: Data truncated

सही तरीका: परिशुद्धता और स्केल निर्दिष्ट करें

CREATE TABLE t (Value DECIMAL(5,2));  -- 999.99 तक
INSERT INTO t VALUES (9.80);  -- कोई चेतावनी नहीं, 9.80 संग्रहीत

चेतावनी के प्रकार

  1. - MySQL में फ्लोट मान को दो कॉलम में कैसे विभाजित करें?

    MySQL में दशमलव संख्या (फ्लोट/स्ट्रिंग) को दशमलव बिंदु से पहले और बाद के भाग में विभाजित करने के लिए, SUBSTRING_INDEX() के साथ CAST() का उपयोग करें। यह वित्तीय डेटा, माप, और निर्देशांक प्रोसेसिंग के लिए उपयोगी है। उदाहरण: 100.50 → 100 और 50 डेमो टेबल बनाएं: mysql> CREATE TABLE DemoTable1951 (V

  1. - Java में MySQL LIKE के साथ खोज वेरिएबल का उपयोग करते समय उद्धरण चिह्नों का सही उपयोग

    सही सिंटैक्स String sqlQuery = SELECT * FROM yourTableName WHERE yourColumnName LIKE % + searchVariable + %; उदाहरण टेबल बनाएं: INSERT INTO demo19 (name) VALUES (John Smith), (David Miller), (Adam Smith), (Chris Brown); Java कोड String searchKeyWord = Smith; String sqlQuery = SELECT * FROM demo19

  1. - MySQL में DECIMAL(19,2) कॉलम में डालते समय मान को TRUNCATE से 2 दशमलव तक सीमित करें

    TRUNCATE() फ़ंक्शन TRUNCATE(value, decimals) मान को निर्दिष्ट दशमलव स्थानों तक काटता है (राउंड नहीं करता)। उदाहरण insert into demo59 values(truncate(15.346, 2)), (truncate(20.379, 2)), (truncate(25.555, 2)), (truncate(100.456, 2)); परिणाम +--------+ | price | +--------+ | 15.34 | | 20.37 | |

© कॉपीराइट https://in.wsxdn.com सर्वाधिकार सुरक्षित
Levelअर्थ
Noteसूचनात्मक (ट्रंकेशन आदि)
Warningसंभावित समस्या (डेटा हानि संभव)
Errorत्रुटि (स्टेटमेंट विफल)