我有一個應用程序使用Hibernate來支持Oracle和MySQL數據庫。更新後,我必須手動刪除一些列上有索引/約束的列。這些索引有Hibernate生成的隨機名稱。刪除MySQL列索引而不知其名稱
在Oracle我可以這樣做:
ALTER TABLE table_name DROP (column_name) CASCADE CONSTRAINTS;
不幸的是,這是不可能的MySQL。有沒有可能做這樣的事情
DROP INDEX (SELECT Key_name FROM (SHOW INDEX FROM table_name WHERE Column_name = 'column_name')) ON table_name;
之前,我刪除列?
編輯:這應該在沒有用戶交互的SQL腳本中工作。