Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

#1064 त्रुटि INSERT INTO . के साथ

अपडेट करें ओपी को सिंटैक्स त्रुटि मिलने का कारण यह है कि पासवर्ड कॉलम की घोषणा के बाद अल्पविराम छोड़ दिया गया था:

CREATE TABLE IF NOT EXISTS `terrier`.`admin` (
  `adminId` int(11) NOT NULL auto_increment,
  `userName` varchar(50) NOT NULL,
  `password` varchar(50) NOT NULL <-- should be a comma here
  PRIMARY KEY (`adminId`))

ऑटो-इन्क्रीमेंट फ़ील्ड में सम्मिलित करने पर नोट्स

आप एक स्वतः-वृद्धिशील फ़ील्ड adminId . में सम्मिलित करने का प्रयास कर रहे हैं . उसके लिए कोई मान निर्दिष्ट न करें, MySQL स्वचालित रूप से इसका ख्याल रखता है।

INSERT INTO admin (`userName`, `password`) VALUES ('wardens', 'Bega&1120');

यदि आप अपने INSERT . में स्पष्ट रूप से कोई मान रखना चाहते हैं ऑटो-इन्क्रीमेंट फ़ील्ड के लिए आपके पास तीन विकल्प हैं जो फ़ील्ड को NOT NULL के रूप में निर्दिष्ट करने के आधार पर हैं - '' , 0 , या NULL . संदर्भ यहां दिया गया है।

INSERT INTO admin (`adminId`, `userName`, `password`) VALUES ('', 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (0, 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (NULL, 'wardens', 'Bega&1120');

अपडेट करें आगे के परीक्षण (जैसा कि @eggyal द्वारा सुझाया गया है) से पता चलता है कि कोई भी निर्दिष्ट डेटाबेस इंजन की परवाह किए बिना मान को ऑटो-इंक्रीमेंट फ़ील्ड में डाला जा सकता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL उपनाम आशुलिपि?

  2. मैसकल - जहां क्लॉज फुल स्कैन से धीमा है

  3. (जावा) कमांड लाइन निष्पादन का उचित उपयोग

  4. Laravel 5.4 अपग्रेड - अखंडता बाधा उल्लंघन - कॉलम रिक्त नहीं हो सकता

  5. MySQL अनुक्रमित TIMESTAMP कॉलम पर फाइलसॉर्ट का उपयोग करता है