加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

为什么MySQL Workbench会为视图生成占位符表?

发布时间:2020-12-11 23:47:29 所属栏目:MySql教程 来源:网络整理
导读:在我在MySQL Workbench中创建的数据库模型中,我定义了一个视图.当我现在从diagramm(菜单 >数据库 >正向工程师或Ctrl G)生成SQL时,将为我的视图创建此代码: -- ------------------------------------------------------- Placeholder table for view `myview

在我在MySQL Workbench中创建的数据库模型中,我定义了一个视图.当我现在从diagramm(菜单 – >数据库 – >正向工程师或Ctrl G)生成SQL时,将为我的视图创建此代码:

-- -----------------------------------------------------
-- Placeholder table for view `myview`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `myview` (...table columns...);
SHOW WARNINGS;

-- -----------------------------------------------------
-- View `myview`
-- -----------------------------------------------------
DROP VIEW IF EXISTS `myview` ;
SHOW WARNINGS;
DROP TABLE IF EXISTS `myview`;
SHOW WARNINGS;
DELIMITER $$
CREATE OR REPLACE VIEW `myview` AS

...view definition...

$$
DELIMITER ;

;
SHOW WARNINGS;


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

为什么要创建此占位符表?

谢谢

最佳答案 占位符(不仅由WB而且由例如mysqldump)创建以解决循环引用.视图定义可以引用一个需要视图的表(或一个表,该表需要一个表,该表需要一个最终需要初始视图的视图).这不能自动检测也不能解决,除非通过定义虚拟视图(暂时作为表,因为视图在大多数方面如表),然后在所有其他对象可用时重新定义它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读