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

MySQL ERROR 1075 ठीक करें: ऑटो इन्क्रीमेंट कॉलम को प्राइमरी की के रूप में परिभाषित करना आवश्यक है

MySQL त्रुटि 1075 तब होती है जब AUTO_INCREMENT कॉलम को PRIMARY KEY (या कम से कम एक UNIQUE KEY) के रूप में परिभाषित नहीं किया जाता है।

त्रुटि पुनरुत्पादन

mysql> CREATE TABLE DemoTable (
    StudentId INT NOT NULL AUTO_INCREMENT,
    StudentName VARCHAR(40),
    StudentAge INT
);
ERROR 1075 (42000): Incorrect table definition;
there can be only one auto column and it must be defined as a key

सही टेबल परिभाषा

mysql> CREATE TABLE DemoTable (
    StudentId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    StudentName VARCHAR(40),
    StudentAge INT
);
Query OK, 0 rows affected (1.01 sec)

डेटा डालना और सत्यापन

mysql> INSERT INTO DemoTable(StudentName,StudentAge) VALUES('Chris Brown',19);
mysql> INSERT INTO DemoTable(StudentName,StudentAge) VALUES('David Miller',18);
mysql> INSERT INTO DemoTable(StudentName,StudentAge) VALUES('John Doe',20);
mysql> SELECT * FROM DemoTable;

आउटपुट:

+-----------+--------------+------------+
| StudentId | StudentName  | StudentAge |
+-----------+--------------+------------+
| 1         | Chris Brown  | 19         |
| 2         | David Miller | 18         |
| 3         | John Doe     | 20         |
+-----------+--------------+------------+
3 rows in set (0.00 sec)

नियम: एक टेबल में केवल एक AUTO_INCREMENT कॉलम हो सकता है, और यह एक कुंजी (प्राइमरी या यूनिक) का हिस्सा होना चाहिए।

  1. - MySQL में आरक्षित शब्द 'index' को कॉलम नाम के रूप में उपयोग करने पर सिंटैक्स त्रुटि ठीक करें

    समस्या MySQL में INDEX एक आरक्षित शब्द (reserved word) है, इसलिए इसे सीधे कॉलम नाम के रूप में उपयोग करने पर सिंटैक्स त्रुटि होती है। त्रुटि उदाहरण ) ENGINE=MyISAM; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right

  1. - Java के साथ MySQL में वर्तमान तारीख में महीने जोड़ें

    सिंटैक्स String query = INSERT INTO yourTableName VALUES (CURDATE() + INTERVAL howManyMonths MONTH); उदाहरण वर्तमान तारीख: 2020-10-25 2 महीने जोड़ने के बाद: 2020-12-25 Java कोड 0) System.out.println(Record inserted successfully..Look into the database); else System.out.print

  1. - MySQL में कई टेबल में कुल परिणामों की संख्या सीमित करें

    समाधान UNION ALL के साथ LIMIT का उपयोग करके कई टेबल से संयुक्त परिणाम सीमित करें। उदाहरण तीन टेबल बनाएं: INSERT INTO demo5 VALUES (100), (60), (50); क्वेरी LIMIT 2; परिणाम +-------+ | value | +-------+ | 30 | | 20 | +-------+ व्याख्या: प्रत्येक टेबल से शीर्ष 2 परिणाम UNION ALL से जोड़े ज