Mysql Error 1025
Contents |
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 site About Us Learn more about Stack Overflow the company Business Learn mysql error 1025 errno 150 more about hiring developers or posting ads with us Stack Overflow Questions Jobs Documentation Tags mysql error 1025 errno 152 Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 6.2 million programmers, just like you, mysql error 1025 (hy000) error on rename of helping each other. Join them; it only takes a minute: Sign up #1025 - Error on rename of './database/#sql-2e0f_1254ba7' to './database/table' (errno: 150) up vote 59 down vote favorite 13 So I am trying to add a primary mysql error 1025 drop index key to one of the tables in my database. Right now it has a primary key like this: PRIMARY KEY (user_id, round_number) Where user_id is a foreign key. I am trying to change it to this: PRIMARY KEY (user_id, round_number, created_at) I am doing this in phpmyadmin by clicking on the primary key icon in the table structure view. This is the error I get: #1025 - Error on rename of './database/#sql-2e0f_1254ba7' to './database/table' (errno: 150)
Mysql 1025
It is a MySQL database with InnoDB table engine. mysql sql phpmyadmin innodb mysql-error-1025 share|improve this question edited Apr 30 '11 at 17:29 OMG Ponies 199k37360417 asked Nov 2 '10 at 17:55 Richard Knop 23.6k95284462 1 A quick search using Google gives me the idea that this problem is related to constraints. Possible helpful links: dev.mysql.com/doc/refman/5.0/en/innodb-error-codes.html and simplicidade.org/notes/archives/2008/03/mysql_errno_150.html –Lekensteyn Nov 2 '10 at 18:01 add a comment| 6 Answers 6 active oldest votes up vote 104 down vote accepted There is probably another table with a foreign key referencing the primary key you are trying to change. To find out which table caused the error you can run SHOW ENGINE INNODB STATUS and then look at the LATEST FOREIGN KEY ERROR section. share|improve this answer edited Nov 20 '14 at 11:00 trejder 6,5031366131 answered Nov 2 '10 at 18:50 Ike Walker 33.6k95278 add a comment| up vote 18 down vote For those who are getting to this question via google... this error can also happen if you try to rename a field that is acting as a foreign key. share|improve this answer answered Jun 20 '13 at 13:03 Dave C 267521 add a comment| up vote 18 down vote As was said you need to remove the FKs before. On Mysql do it like this: ALTER TABLE `table_name` DROP FOREIGN KEY `id_name_fk`; ALTER TABLE `table_name` DR
here for a quick overview of the site Help Center Detailed answers to any questions you might have Meta Discuss
Error Code 1025 Mysql
the workings and policies of this site About Us Learn more about error 1025 (hy000) error on rename of Stack Overflow the company Business Learn more about hiring developers or posting ads with us Stack Overflow mysql error 1005 Questions Jobs Documentation Tags Users Badges Ask Question x Dismiss Join the Stack Overflow Community Stack Overflow is a community of 6.2 million programmers, just like you, helping each http://stackoverflow.com/questions/4080611/1025-error-on-rename-of-database-sql-2e0f-1254ba7-to-database-table other. Join them; it only takes a minute: Sign up MySQL #1025 Error up vote 1 down vote favorite I get a #1025 error when this query is run. SQL query: ALTER TABLE `routes` CHANGE `end_loc` `end_loc` VARCHAR( 500 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL MySQL said: #1025 - Error on rename of './ridestr/#sql-1f44_26eeb' to './ridestr/routes' (errno: http://stackoverflow.com/questions/5338304/mysql-1025-error 150) Which is funny because I set up this query in PHP MyAdmin…I don't know why I'm getting a foreign key error…I'm just trying to change something from int to varchar Can anyone help? mysql mysql-error-1025 share|improve this question edited Apr 30 '11 at 17:29 OMG Ponies 199k37360417 asked Mar 17 '11 at 11:20 joshdcomp 53511122 errno: 150 usually means that there is a foreign key problem - can you please post your structure queries so we can help you better? –BigFatBaby Mar 17 '11 at 11:24 Have you tried disabling foreign key checks before the query and enabling them again after the query? –Halil Özgür Mar 17 '11 at 14:10 add a comment| 2 Answers 2 active oldest votes up vote 5 down vote accepted If the routes.end_loc column is being used in a foreign key, then you can't change its data type. You will need to drop the foreign key, change the data type of both the parent and child columns, and then add the foreign k
Hugo. RSS Feed. Baron Schwartz's Blog MySQL's ERROR 1025 explained Tue, Aug 22, 2006 in Databases MySQL issues a http://www.xaprb.com/blog/2006/08/22/mysqls-error-1025-explained/ cryptic error message, “Error on rename,” when you try to alter a table in such a way that it would break a foreign key constraint: create table test1(a int not null primary key)engine=innodb; create table test2(a int not null, foreign key(a) references test1 (a)) engine=innodb; alter table test2 modify a mysql error smallint not null; ERROR 1025 (HY000): Error on rename of './test/#sql-2fa8_1' to './test/test2' (errno: 150) This happens because ALTER TABLE really works by making a copy of the table, then renaming to move the old table out of the way and move the new table into its place. It is mysql error 1025 certainly one of the less meaningful error messages I’ve seen in MySQL. There’s slightly more information in the output of SHOW ENGINE INNODB STATUS, if you are looking there (of course, if you’re looking there you’re probably already clued in to what’s going on). And innotop can parse that information for you: In case you didn’t understand why the foreign key constraint was failing, the error message innotop parses out is much clearer. It’s because the foreign key columns in the parent and child table have to have the same data type. I was trying to change the child’s column to an incompatible type. I'm Baron Schwartz, the founder and CEO of VividCortex. I am the author of High Performance MySQL and many open-source tools for performance analysis, monitoring, and system administration. I contribute to various database communities such as Oracle, PostgreSQL, Redis and MongoDB. Newer Older Comments