【问题标题】:In my database - Error 1062 Dublicate entry key PRIMARY在我的数据库中 - 错误 1062 Duplicate entry key PRIMARY
【发布时间】:2019-12-21 14:11:05
【问题描述】:

我创建关于学校的数据库,当我运行项目 MySQQL 时查看错误 1062 重复输入键 PRIMARY。如何修复错误?

-- MySQL 转储 10.13 Distrib 8.0.12,用于 Win64 (x86_64) -- -- 主机:localhost 数据库:school_db_newnew -------------------------------------------------- ------ -- 服务器版本 8.0.12

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
 SET NAMES utf8 ;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Dumping data for table `class`
--

LOCK TABLES `class` WRITE;
/*!40000 ALTER TABLE `class` DISABLE KEYS */;
INSERT INTO `class` VALUES (111,'1A'),(112,'1B'),(113,'1C'),(114,'2A'),(115,'2B'),(116,'3A'),(117,'3B');
/*!40000 ALTER TABLE `class` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `class_subject_connection`
--

LOCK TABLES `class_subject_connection` WRITE;
/*!40000 ALTER TABLE `class_subject_connection` DISABLE KEYS */;
INSERT INTO `class_subject_connection` VALUES (1,111,29),(2,111,24),(3,111,28),(4,116,29),(5,116,12),(6,115,14),(7,114,15),(8,113,17),(9,114,17),(10,115,18),(11,113,20),(12,115,23),(13,112,21),(14,116,22);
/*!40000 ALTER TABLE `class_subject_connection` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `grade`
--

LOCK TABLES `grade` WRITE;
/*!40000 ALTER TABLE `grade` DISABLE KEYS */;
/*!40000 ALTER TABLE `grade` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `grade_value`
--

LOCK TABLES `grade_value` WRITE;
/*!40000 ALTER TABLE `grade_value` DISABLE KEYS */;
INSERT INTO `grade_value` VALUES (1,1),(2,2),(3,3),(4,4),(5,5);
/*!40000 ALTER TABLE `grade_value` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `hibernate_sequence`
--

LOCK TABLES `hibernate_sequence` WRITE;
/*!40000 ALTER TABLE `hibernate_sequence` DISABLE KEYS */;
INSERT INTO `hibernate_sequence` VALUES (107);
/*!40000 ALTER TABLE `hibernate_sequence` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `student`
--

LOCK TABLES `student` WRITE;
/*!40000 ALTER TABLE `student` DISABLE KEYS */;
INSERT INTO `student` VALUES (100,NULL,'bez','photo',NULL),(101,NULL,'User','12343',NULL),(102,NULL,'admin1','','avatar1371003006780604505.i0d');
/*!40000 ALTER TABLE `student` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `students`
--

LOCK TABLES `students` WRITE;
/*!40000 ALTER TABLE `students` DISABLE KEYS */;
INSERT INTO `students` VALUES (1,'1','1'),(2,'Mac','Windows');
/*!40000 ALTER TABLE `students` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `subject`
--

LOCK TABLES `subject` WRITE;
/*!40000 ALTER TABLE `subject` DISABLE KEYS */;
INSERT INTO `subject` VALUES (11,'Algebra'),(12,'Geometry'),(13,'Chemistry'),(14,'Informatix'),(15,'History'),(16,'Biology'),(17,'English'),(18,'Physics'),(19,'Physical Culture'),(20,'Labour Lesson'),(21,'Art'),(22,'Literature'),(23,'Music'),(24,'Social studies'),(25,'Science'),(26,'Psychology'),(27,'Reading'),(28,'Health'),(29,'Geography'),(30,'Mathematics');
/*!40000 ALTER TABLE `subject` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `teacher`
--

LOCK TABLES `teacher` WRITE;
/*!40000 ALTER TABLE `teacher` DISABLE KEYS */;
INSERT INTO `teacher` VALUES (810111,'Steve Jobs'),(810112,'Bill Gates'),(810113,'Ilon Mask'),(810114,'Tony Stark'),(810115,'Army Hammer'),(810116,'Bruce Banner'),(810117,'Bruce Wayne'),(810118,'Peter Parker'),(810119,'Rid Richards');
/*!40000 ALTER TABLE `teacher` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `teacher_subject_connection`
--

LOCK TABLES `teacher_subject_connection` WRITE;
/*!40000 ALTER TABLE `teacher_subject_connection` DISABLE KEYS */;
INSERT INTO `teacher_subject_connection` VALUES (1,11,810115),(2,15,810112),(3,12,810116),(4,17,810117),(5,16,810113),(6,21,810118),(7,28,810119),(8,29,810111),(9,18,810114),(10,13,810111),(11,14,810118),(12,19,810115),(13,22,810113),(14,23,810111),(15,24,810119),(16,25,810114),(17,26,810112),(18,27,810118),(19,30,810115),(20,20,810117),(21,29,810116);
/*!40000 ALTER TABLE `teacher_subject_connection` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Dumping data for table `users`
--

LOCK TABLES `users` WRITE;
/*!40000 ALTER TABLE `users` DISABLE KEYS */;
INSERT INTO `users` VALUES (101,'a','123','ROLE_ADMIN'),(102,'t','123','ROLE_USER'),(103,'Victor_new','123','ROLE_USER'),(104,'test','test','ADMIN_ROLE'),(105,'test2','test2','ADMIN_ROLE'),(106,'1','123','USER_ADMIN');
/*!40000 ALTER TABLE `users` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

-- Dump completed on 2019-08-14 19:40:21

【问题讨论】:

    标签: mysql database


    【解决方案1】:

    主列只能存储一个唯一的数据条目。如果您尝试再次将现有数据插入该列,您将收到错误消息 Duplicate entry on PRIMARY。因此,您可以考虑以下几点:

    1. 通过以下简单查询检查您的表中此 111 值是否已存在:
        SELECT * FROM table WHERE column='111';
    
    1. 如果您尝试插入表中已存在的数据以外的其他数据,请在查询中改用INSERT IGNORE
    2. 如果您尝试更新 111 的其他列值,请考虑使用:
        UPDATE table SET column1=xxx, column2=xxx WHERE column='111';
    
    1. 否则如果不熟悉UPDATE查询,可以先DELETE数据再执行INSERT

      在执行DELETE 之前,一个好的做法是先执行SELECT,这样您就可以看到您正在删除的数据是什么。

        SELECT * FROM table WHERE column='111';
    

    一旦您查看并确定要删除的数据,您只需将SELECT * 部分更改为DELETE,如下所示:

        DELETE FROM table WHERE column='111';
    

    【讨论】:

      猜你喜欢
      • 2018-12-01
      • 2019-10-11
      • 2021-10-07
      • 2021-01-22
      • 1970-01-01
      • 2015-10-23
      • 2013-09-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多