Duplicate Entry Error Code Mysql
Contents |
here for a quick overview of the site Help Center Detailed answers mysql error duplicate entry for key 'primary' to any questions you might have Meta Discuss the workings mysql error duplicate entry '0' for key 'primary' and policies of this site About Us Learn more about Stack Overflow the company Business mysql error 1062 duplicate entry Learn more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack
Mysql Replication Error Duplicate Entry
Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign up Error Code: 1062. Duplicate entry 'PRIMARY' up vote 1 down vote favorite So, my professor gave me tables to insert it in a database mysql duplicate entry for key 1 but when I execute his code, MySQL is constantly giving the Error Code: 1062. Here is the conflict tables and the inserts: TABLES CREATE TABLE FABRICANTES( COD_FABRICANTE integer NOT NULL, NOMBRE VARCHAR(15), PAIS VARCHAR(15), primary key (cod_fabricante) ); CREATE TABLE ARTICULOS( ARTICULO VARCHAR(20)NOT NULL, COD_FABRICANTE integer NOT NULL, PESO integer NOT NULL , CATEGORIA VARCHAR(10) NOT NULL, PRECIO_VENTA integer, PRECIO_COSTO integer, EXISTENCIAS integer, primary key (articulo,cod_fabricante), foreign key (cod_fabricante) references Fabricantes(cod_fabricante) ); INSERT INTO: INSERT INTO FABRICANTES VALUES(10,'CALVO', 'ESPAÑA'); INSERT INTO FABRICANTES VALUES(15,'LU', 'BELGICA'); INSERT INTO FABRICANTES VALUES(20,'BARILLA', 'ITALIA'); INSERT INTO FABRICANTES VALUES(25,'GALLO', 'ESPAÑA'); INSERT INTO FABRICANTES VALUES(30,'PRESIDENT', 'FRANCIA'); INSERT INTO ARTICULOS VALUES ('Macarrones',20, 1, 'Primera',100,98,120); INSERT INTO ARTICULOS VALUES ('Tallarines',20, 2, 'Primera',120,100,100); INSERT INTO ARTICULOS VALUES ('Tallarines',20, 1, 'Segunda',99,50,100); INSERT INTO ARTICULOS VALUES ('Macarrones',20, 1, 'Tercera',80,50,100); INSERT INTO ARTICULOS VALUES ('Atún',10, 3, 'Primera',200,150,220); INSERT INTO ARTICULOS VALUES ('Atún',10, 3, 'Segunda',150,100,220); INSERT INTO ARTICULOS VALUES ('Atún',10, 3, 'Tercera',
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss the workings and policies of this mysql duplicate entry for key primary auto_increment site About Us Learn more about Stack Overflow the company Business Learn
Mysql Duplicate Entry For Key 2
more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags Users Badges Ask Question
Mysql Duplicate Entry On Update
x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 4.7 million programmers, just like you, helping each other. Join them; it only takes a minute: Sign up MySQL http://stackoverflow.com/questions/28702069/error-code-1062-duplicate-entry-primary duplicate entry error even though there is no duplicate entry up vote 5 down vote favorite 1 I am using MySQL 5.1.56, MyISAM. My table looks like this: CREATE TABLE IF NOT EXISTS `my_table` ( `number` int(11) NOT NULL, `name` varchar(50) NOT NULL, `money` int(11) NOT NULL, PRIMARY KEY (`number`,`name`) ) ENGINE=MyISAM; It contains these two rows: INSERT INTO `my_table` (`number`, `name`, `money`) VALUES http://stackoverflow.com/questions/13132535/mysql-duplicate-entry-error-even-though-there-is-no-duplicate-entry (1, 'S. Name', 150), (2, 'Another Name', 284); Now I am trying to insert another row: INSERT INTO `my_table` (`number`, `name`, `money`) VALUES (2, 'S. Name', 240); And MySQL just won't insert it while telling me this: #1062 - Duplicate entry '2-S. Name' for key 'PRIMARY' I really don't understand it. The primary key is on the first two columns (both of them), so the row I am trying to insert HAS a unique primary key, doesn't it? I tried to repair the table, I tried to optimize the table, all to no avail. Also please note that I cannot change from MyISAM to InnoDB. Am I missing something or is this a bug of MySQL or MyISAM? Thanks. To summarize and point out where I think is the problem (even though there shouldn't be): Table has primary key on two columns. I am trying to insert a row with a new combination of values in these two columns, but value in column one is already in some row and value in column two is already in another row. But they are not anywhere combined, so I believe this
Connectors More MySQL.com Downloads Developer Zone Section Menu: Documentation Home MySQL 5.7 Reference Manual Preface and Legal Notices General Information Installing and Upgrading MySQL Using MySQL as a Document Store Tutorial MySQL Programs MySQL http://dev.mysql.com/doc/en/error-messages-server.html Server Administration Security Backup and Recovery Optimization Language Structure Globalization Data Types Functions and Operators SQL Statement Syntax The InnoDB Storage Engine Alternative Storage Engines High Availability and Scalability Replication MySQL Cluster http://www.ducea.com/2008/02/13/mysql-skip-duplicate-replication-errors/ NDB 7.5 Partitioning Stored Programs and Views INFORMATION_SCHEMA Tables MySQL Performance Schema MySQL sys Schema Connectors and APIs Extending MySQL MySQL Enterprise Edition MySQL Workbench MySQL 5.7 Frequently Asked Questions Errors, Error duplicate entry Codes, and Common Problems Sources of Error Information Types of Error Values Server Error Codes and Messages Client Error Codes and Messages Problems and Common Errors How to Determine What Is Causing a Problem Common Errors When Using MySQL Programs Access denied Can't connect to [local] MySQL server Lost connection to MySQL server Client does not support authentication protocol Password Fails When Entered Interactively Host duplicate entry for 'host_name' is blocked Too many connections Out of memory MySQL server has gone away Packet Too Large Communication Errors and Aborted Connections The table is full Can't create/write to file Commands out of sync Ignoring user Table 'tbl_name' doesn't exist Can't initialize character set File Not Found and Similar Errors Table-Corruption Issues Administration-Related Issues Problems with File Permissions How to Reset the Root Password What to Do If MySQL Keeps Crashing How MySQL Handles a Full Disk Where MySQL Stores Temporary Files How to Protect or Change the MySQL Unix Socket File Time Zone Problems Query-Related Issues Case Sensitivity in String Searches Problems Using DATE Columns Problems with NULL Values Problems with Column Aliases Rollback Failure for Nontransactional Tables Deleting Rows from Related Tables Solving Problems with No Matching Rows Problems with Floating-Point Values Optimizer-Related Issues Table Definition-Related Issues Problems with ALTER TABLE TEMPORARY Table Problems Known Issues in MySQL Restrictions and Limits Indexes MySQL Glossary Related Documentation MySQL 5.7 Release Notes Download this Manual PDF (US Ltr) - 35.6Mb PDF (A4) - 35.6Mb PDF (RPM) - 34.7Mb EPUB - 8.7Mb HTML Download (TGZ) - 8.5Mb HTML Download (Zip) - 8.5Mb HT
This happens in order for us to be able to identify the problem and fix it, and keep the data consistent with the mater that has sent the query. You can skip such errors, even if this is not recommended, as long as you know really well what are those queries and why they are failing, etc. For example you can skip just one query that is hanging the slave using: 1 mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE; There might be cases where you will want to skip more queries. For example you might want to skip all duplicate errors you might be getting (output from show slave status;): 1 "1062 | Error 'Duplicate entry 'xyz' for key 1' on query. Default database: 'db'. Query: 'INSERT INTO ..." If you are sure that skipping those errors will not bring your slave inconsistent and you want to skip them ALL, you would add to your my.cnf: 1 slave-skip-errors = 1062 As shown above in my example 1062 is the error you would want to skip, and from here we have: _ Error: 1062 SQLSTATE: 23000 (ER_DUP_ENTRY) Message: Duplicate entry ‘%s’ for key %d_ You can skip also other type of errors, but again don’t do this unless you understand very well what those queries are and what impact they have on your data: 1 slave-skip-errors=[err_code1,err_code2,...|all] and for the error codes you can see them all here … (you will see them in your _show slave statu_s; also). Posted by Marius Ducea Feb 13th, 2008 posted in: tips & tricks tagged with: mysql, tips Tweet « Linux Tips: find all files of a particular size Increase PHP memory limit » Comments Please enable JavaScript to view the comments powered by Disqus. About Me My name is Marius Ducea. I am an experienced Infrastructure Developer based in the SF Bay Area. You can find out more about me here. I