基表上一般建几层视图?为什么程序员只能对视图操作?
发布网友
发布时间:2022-05-11 10:05
我来回答
共1个回答
热心网友
时间:2023-10-11 01:11
基表上一般建几层视图?
这个看项目的需要。 不同公司, 不同项目, 千差万别。
有的业务简单的, 就一个视图, 直接 SELECT 表了。
有的业务复杂的, 就先 底层视图 select 表。 上层视图 select 底层视图。
具体几层, 还是看业务的复杂程度的。
不过不建议层数太多。 某些情况下, 视图嵌套多了, 影响查询性能。
为什么程序员只能对视图操作?
没这个规定的啊。
除非是某些公司的, 某些项目。 一个表中, 某些数据, 不能让程序员看到。
但是又需要程序员来开发相应的程序。
这种情况下,是 程序员只能对视图操作, 不能看表的。
例如 公司的 HR 的表, 包含 员工 的工号、姓名、出生年月、家庭住址、部门、职务、薪资等信息。
HR 希望 程序员开发一个 “生日提醒”的 功能。
就是每月月底, 自动提醒, 产生一个 下月过生日的 员工信息列表。 包含 姓名、生日、部门等信息。
对于程序员来说, 要必须要访问这个 HR 的表。
但是对于 “薪资” 这类 较为敏感的数据, HR 也不希望让你们 写程序的都知道。
咋办咧?
那就创建一个视图
CREATE VIEW v_员工表缩水版 AS
SELECT 姓名, 生日, 部门 FROM HR的表。
然后只
把 SELECT v_员工表缩水版 的权限, 给程序员。
就可以了。