几个月前,我创建了一个VIEW,它给了我上个月的交易.我在其他查询中使用该视图.问题是,我更改了VIEW中引用的表的一些表名,并且在进程中打破了VIEW查询.现在我的其他查询不再执行了.
有没有办法查看VIEW语句是什么,并编辑它以反映新的表名称?我正在使用phpmyadmin,但每次我尝试去视图表时,它都会给我一个错误,说它无效,但它不会告诉我它是什么...
通知您可以运行此视图的名称,它将显示创建视图的查询.如果phpMyAdmin不允许你运行它,那么你可能必须在命令行执行它.
SHOW CREATE VIEW view_name
Run Code Online (Sandbox Code Playgroud)
你还应该说它像:
SQL SECURITY DEFINER VIEW `myViewName` AS
Run Code Online (Sandbox Code Playgroud)
在此之后,您将找到创建此视图的查询.将其复制并粘贴到文本编辑器中,您可以对其进行更改,使其适用于新的表名.
将其作为普通查询运行以确保其正常工作,然后当您准备将其替换为损坏的原始文件时,您可以运行此查询(请注意这将删除原始视图!):
DROP VIEW IF EXISTS myViewName;
CREATE VIEW myViewName AS ...(your new query here)...
Run Code Online (Sandbox Code Playgroud)
希望有所帮助!
参考文献:
归档时间: |
|
查看次数: |
2921 次 |
最近记录: |