轉載網址:
https://blog.csdn.net/carefree2005/article/details/109812943?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_antiscanv2&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1.pc_relevant_antiscanv2&utm_relevant_index=1
一、查詢所有視圖的庫名、表名、定義者
mysql>select TABLE_SCHEMA,TABLE_NAME,DEFINER from information_schema.VIEWS;
二、生成alter VIEW的SQL
使用Navicat Premium 12(數據庫連接客戶端工具)執行如下查詢語句,其中test@%為原視圖定義者,root@localhost為需要修改的新的視圖定義者。
select concat(“alter DEFINER=‘root’@‘localhost’ SQL SECURITY DEFINER VIEW “,TABLE_SCHEMA,”.”,TABLE_NAME," as “,VIEW_DEFINITION,”;") from information_schema.VIEWS where DEFINER = ‘test@%’;
三、執行生成的修改DEFINER語句
復制生成的SQL語句並執行
