Problem:- I faced an issue in one of my web projects. I was trying to delete a record or multiple records from a table let’s call it “tasks_tb”, but I was facing an issue of “ERROR 1146 (42S02): Table ‘abc_db.tasks_history_tb’ doesn’t exist”.
Solution: I was facing an issue with the second table, named tasks_history_tb which no longer existed in the database abc_db. Whenever I was attempting to delete a record or multiple records from a table tasks_tb, deleting was not happening, but an error was showing for another table that no longer existed in the database.
So, I researched the internet, but the solutions provided on the internet, like “restarting the MySQL engine, taking a backup of the database, recreating a new database, checking permissions on the database, etc.”, but all the above solutions are not applicable in my case as I was not allowed to do such things on the client’s database server. Then I thought I needed to check the list of constraints, especially foreign keys in the database. Still, no such constraints are in the current existing table “tasks_tb”.
Then I thought about triggers. Then I checked the list of triggers in the database, and I found a trigger named “task_delete_trigger” whose definition was something like “whenever delete was going to be performed on tasks_tb table, then insert a record in tasks_history_tb”.
That’s why the delete operation on tasks_tb was not happening, as the trigger exists for another table that no longer exists. So, I deleted the trigger by following the query:
DELETE TRIGGER task_delete_trigger;
So, with this simple query, my issue was resolved.
So, whenever you face an issue with a delete operation on one table but it shows an 1146 error for another non-existing table, then try to view a list of constraints and triggers. Maybe some foreign key constraints are causing an issue, or there may be a trigger causing an issue.
jQuery presents a tree-like structure of all the elements on a webpage simplifying the syntax and further manipulating such elements. The jQuery Certification Exam by StudySection will secure your fundamental knowledge and a basic understanding of jQuery as an asset to improve your skills.