SQL_VIEW视图错位的处理方式和注意

1.问题

视图VIEW1在VIEW2有串用,在VIEW1中最前面增加栏位 L3,未重新编译导致VIEW2视图中的栏位均错位一位。

2.问题详细说明

表1 L : 三个栏位L1,L2,L3

表2 A : 三个栏位A1,A2,A3

表3 B : 三个栏位B1,B2,B3

VIEW1:

|-----------------------------------------------------------------------------------|---------------------------------------------------------------------------------------|
| 原本 | 调整后 |
| CREATE VIEW VIEW1 -- ======================= AS SELECT L1,L2,A.* FROM L.L1= A.A1 | CREATE VIEW VIEW1 -- ======================= AS SELECT L3, L1,L2,A.* FROM L.L1= A.A1 |

VIEW2

|----------------------------------------------------------------------------------------------------------|
| 视图 |
| CREATE VIEW VIEW2 -- ======================= AS SELECT A.*,D.B2 FROM VIEW1 C LEFT JOIN B D ON C.L1=D.B1 |

只更新VIEW1,未重新编译VIEW2的情况下若使用SELECT * FROM VIEW2 会导致显示的数据内容对应连续错一位。

3.解决办法

重新对引用 VIEW1的VIEW2均需要再重新编译一次,同时建议一般新增需要的栏位,放到最后,避免影响最少。

|---------------------------------------------------------------------------------------------------------|
| ALTER VIEW VIEW2 -- ======================= AS SELECT A.*,D.B2 FROM VIEW1 C LEFT JOIN B D ON C.L1=D.B1 |

相关推荐
不会就选b8 小时前
MySQL之视图
数据库·mysql
>no problem<8 小时前
基于cola5.0的基础设施层的多数据库切换方案思路
数据库·spring boot·mybatisplus·cola5.0·数据库迁移适配
OceanBase数据库官方博客8 小时前
OceanBase 赋能央国企:从发电到用电的全链路业务承载
数据库·oceanbase
瀚高PG实验室9 小时前
pgsql-ogr-fdw
数据库·postgresql·瀚高数据库·highgo
IvorySQL9 小时前
PostgreSQL 技术日报 (6月5日)|PG19 Beta1 上线,PGConf.PL 2026开启征稿
数据库·postgresql·区块链
abcy07121310 小时前
pycharm python sqlalchemy mysql增删改查实例csdn
数据库·oracle
无风听海10 小时前
IndexedDB 深度指南 浏览器中的事务型对象数据库
前端·数据库
咋吃都不胖lyh10 小时前
langgraph基础示例
数据库
胖胖胖胖胖虎10 小时前
SQL json_table 行转列方法
sql
网管NO.111 小时前
子查询进阶|EXISTS/IN/ANY/ALL,优化查询效率
数据库·sql