gpt4 book ai didi

MySQL - 自动更新 View

转载 作者:行者123 更新时间:2023-11-30 22:42:17 25 4
gpt4 key购买 nike

我想知道是否可以创建一个 SQL 函数来自动更新我的 View 并向其添加数据库中的新表。

我的数据库包含多个表(相同的数据结构)并命名为“MM_DD”,现在我想创建一个连接所有这些数据的 View (非常简单,请参见下面的查询)但我希望自动化处理,因此每次添加新表时, View 都会更新。

CREATE OR REPLACE VIEW `viewTable` AS
select *,
md5(CONCAT(`columnA`,`columnB`)) AS myPK_id
from `05_06`
union all
select *,
md5(CONCAT(`columnA`,`columnB`)) AS myPK_id
from `05_08`

ect...

我现在正在做的是每次添加表格时都使用 PHP。它遍历表并创建/更新 View 。

select * from information_schema.tables WHERE table_name LIKE '%05%'

现在我有了一个表名数组 -> 创建我的查询字符串 -> 替换 View ...

这可以在 SQL 中执行吗?如果是这样,正确的方法是什么?

最佳答案

编写一个存储过程来重建您的 View 。您需要使用 MySQL 内部称为“准备好的语句”的内容,以便您可以使用字符串操作。

您仍将使用 SELECT ... FROM information_schema.tables 查询来驱动此存储过程。

一旦你让它工作,你可以将它嵌入到一个 mySQL 事件中,并安排它自动运行。例如,您可以在深夜同时运行它。

或者,您可以在创建这些表之一后立即调用存储过程。

关于MySQL - 自动更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30802102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com