当前位置: 首页 > news >正文

做网站的靠什么赚钱西安网站关键词优化费用

做网站的靠什么赚钱,西安网站关键词优化费用,网站改版策划书,骨科免费咨询postgresql-视图 视图概述使用视图的好处 创建视图修改视图删除视图递归视图可更新视图WITH CHECK OPTION 视图概述 视图(View)本质上是一个存储在数据库中的查询语句。视图本身不包含数据,也被称为 虚拟表。我们在创建视图时给它指定了一个…

postgresql-视图

  • 视图概述
    • 使用视图的好处
  • 创建视图
  • 修改视图
  • 删除视图
  • 递归视图
  • 可更新视图
    • WITH CHECK OPTION

视图概述

视图(View)本质上是一个存储在数据库中的查询语句。视图本身不包含数据,也被称为
虚拟表。我们在创建视图时给它指定了一个名称,然后可以像表一样对其进行查询
在这里插入图片描述

使用视图的好处

在这里插入图片描述

创建视图

PostgreSQL 使用 CREATE VIEW 语句创建视图:

CREATE VIEW view_name AS query;

其中,view_name 是视图的名称;AS 之后是视图的查询语句,可以是简单查询或者复杂的
查询。以下语句创建了一个包含员工详细信息的视图:

create view emp_details_view
as selecte.employee_id,e.job_id,e.manager_id,e.department_id,d.location_id,e.first_name,e.last_name,e.salary,e.commission_pct,d.department_name,j.job_title
from employees e
join departments d on (e.department_id = d.department_id)
join jobs j on (j.job_id = e.job_id);
-- 使用视图查询数据
select * from emp_details_view
where department_name = 'IT';

在这里插入图片描述

修改视图

如果需要修改视图定义中的查询,可以使用 CREATE OR REPLACE 语句:

CREATE OR REPLACE VIEW 视图名称
AS
查询语句;
--PostgreSQL 目前只支持追加视图定义中的字段,不支持减少字段或者修改字段的名称或顺
--序。例如,我们可以为视图 emp_details_view 增加一个字段 hire_date:
create or replace view emp_details_view
as selecte.employee_id,e.job_id,e.manager_id,e.department_id,d.location_id,e.first_name,e.last_name,e.salary,e.commission_pct,d.department_name,j.job_title,e.hire_date
from employees e
join departments d on (e.department_id = d.department_id)
join jobs j on (j.job_id = e.job_id);
--另外,PostgreSQL 还提供了 ALTER VIEW 语句修改视图的属性。例如以下语句用于修改视图的名称
--该语句将视图 emp_details_view 重命名为 emp_info_view。
ALTER VIEW emp_details_view RENAME TO emp_info_view;

ALTER VIEW 语句还提供了其他的修改功能,例如设置字段的默认值、修改视图所属的模
式等,具体可以参考官方文档

删除视图

使用 DROP VIEW 语句删除一个已有的视图:

DROP VIEW [ IF EXISTS ] name [ CASCADE | RESTRICT ];

其中,IF EXISTS 可以避免删除一个不存在的视图时产生错误;CASCADE 表示级联删除依
赖于该视图的对象;RESTRICT 表示如果存在依赖对象则提示错误信息,这是默认值

递归视图

--视图的定义中也可以使用 recursive来创建递归视图
-- column_names:字段名称
create recursive view 视图名 (column_names) as 查询语句;
-- 递归视图需要指定字段的名称 column_names。以上语句实际上等价于以下sql
CREATE VIEW view_name AS
WITH RECURSIVE cte_name (column_names) AS (query)
SELECT column_names FROM cte_name;
-- 递归视图的创建
CREATE RECURSIVE VIEW employee_path(employee_id, employee_name, path) ASSELECT employee_id, CONCAT(first_name, ',', last_name), CONCAT(first_name,
',', last_name) AS pathFROM employeesWHERE manager_id IS NULLUNION ALLSELECT e.employee_id, CONCAT(e.first_name, ',', e.last_name),
CONCAT(ep.path, '->', e.first_name, ',', e.last_name)FROM employee_path epJOIN employees e ON ep.employee_id = e.manager_id;
-- 查询视图
select * from employee_path ep ;

在这里插入图片描述

可更新视图

如果一个视图满足以下条件:
• 视图定义的 FROM 子句中只包含一个表或者可更新视图;
• 视图定义的最顶层查询语句中不包含以下子句:GROUP BY、HAVING、LIMIT、OFFSET、
DISTINCT、WITH、UNION、INTERSECT 以及 EXCEPT;
• SELECT 列表中不包含窗口函数、集合函数或者聚合函数(例如 SUM、COUNT、AVG
等)。
那么该视图被称为可更新视图(updatable view),意味着我们可以对其执行 INSERT、
UPDATE 以及 DELETE 语句,PostgreSQL 会将这些操作转换为对底层表的操作。

-- 创建视图
create view employees_it as
select employee_id,first_name,last_name,email,phone_number,hire_date,job_id,manager_id,department_id
from employees
where department_id = 60;
-- 查询视图信息
select employee_id,first_name, last_name from employees_it;

在这里插入图片描述

-- 通过视图 employees_it 为 employees 表增加一个员工:
insert into employees_it
(employee_id, first_name, last_name, email, phone_number, hire_date, job_id,
manager_id, department_id)
VALUES(209, 'Tony', 'Dong', 'DONG', '590.423.5568', '2020-05-06', 'IT_PROG',
103, 60);
select * from employees_it;

在这里插入图片描述
在这里插入图片描述

WITH CHECK OPTION

为了防止通过视图插入或者修改视图不可见的数据,可以使用WITH CHECK OPTION选项:

create or replace view employees_it as
select employee_id,first_name,last_name,email,phone_number,hire_date,job_id,manager_id,department_id
from employees
where department_id = 60
with check option;

在这里插入图片描述
执行结果显示违反检查选项,无法插入数据。
WITH CASCADED CHECK OPTION 选项会对视图以及它所依赖的其他视图进行级联检查;
WITH LOCAL CHECK OPTION 选项只对当前视图进行检查。默认为 CASCADED


文章转载自:
http://dinncogyrovague.wbqt.cn
http://dinncooverrun.wbqt.cn
http://dinncomonosilane.wbqt.cn
http://dinncotransversely.wbqt.cn
http://dinncomuckheap.wbqt.cn
http://dinncocommunalistic.wbqt.cn
http://dinncohaematophyte.wbqt.cn
http://dinncomithridatism.wbqt.cn
http://dinncohairsplitting.wbqt.cn
http://dinncoobjection.wbqt.cn
http://dinncoteucrian.wbqt.cn
http://dinncoimpartiality.wbqt.cn
http://dinncoadhesion.wbqt.cn
http://dinncohypermetropic.wbqt.cn
http://dinncosolemnize.wbqt.cn
http://dinncosuable.wbqt.cn
http://dinncosimulant.wbqt.cn
http://dinncocotyloid.wbqt.cn
http://dinncopaty.wbqt.cn
http://dinncoostentatious.wbqt.cn
http://dinncodeputize.wbqt.cn
http://dinncononskidding.wbqt.cn
http://dinncooffspeed.wbqt.cn
http://dinncodozenth.wbqt.cn
http://dinncocosmologic.wbqt.cn
http://dinncodeanna.wbqt.cn
http://dinncosubadar.wbqt.cn
http://dinncodoura.wbqt.cn
http://dinncoforesheet.wbqt.cn
http://dinncowithering.wbqt.cn
http://dinncoacromion.wbqt.cn
http://dinncozoophilia.wbqt.cn
http://dinncocontinuatively.wbqt.cn
http://dinncomeniscoid.wbqt.cn
http://dinncoindustrialise.wbqt.cn
http://dinncotunable.wbqt.cn
http://dinncodocetae.wbqt.cn
http://dinncoidempotent.wbqt.cn
http://dinncospelter.wbqt.cn
http://dinncounlink.wbqt.cn
http://dinncophotopolarimeter.wbqt.cn
http://dinncojalor.wbqt.cn
http://dinncointerlock.wbqt.cn
http://dinncoruritan.wbqt.cn
http://dinncolighthouseman.wbqt.cn
http://dinncohonkers.wbqt.cn
http://dinncoawoken.wbqt.cn
http://dinncodefeasance.wbqt.cn
http://dinncokotka.wbqt.cn
http://dinncotrihedral.wbqt.cn
http://dinncoderv.wbqt.cn
http://dinncoduchess.wbqt.cn
http://dinncowolves.wbqt.cn
http://dinncowhittret.wbqt.cn
http://dinncocabriolet.wbqt.cn
http://dinncoburleigh.wbqt.cn
http://dinncocassis.wbqt.cn
http://dinncowhirleybird.wbqt.cn
http://dinncosalesian.wbqt.cn
http://dinncoincasement.wbqt.cn
http://dinncosensory.wbqt.cn
http://dinncobloodstone.wbqt.cn
http://dinncohawkmoth.wbqt.cn
http://dinncodraffy.wbqt.cn
http://dinncochemotaxonomy.wbqt.cn
http://dinncotransferable.wbqt.cn
http://dinncohymnology.wbqt.cn
http://dinncoyolky.wbqt.cn
http://dinncoindulgence.wbqt.cn
http://dinncounexploited.wbqt.cn
http://dinncooxidimetry.wbqt.cn
http://dinncocaricaturist.wbqt.cn
http://dinncocalypsonian.wbqt.cn
http://dinncoillinois.wbqt.cn
http://dinncoablution.wbqt.cn
http://dinncodecaffeinate.wbqt.cn
http://dinncodrift.wbqt.cn
http://dinncodorcas.wbqt.cn
http://dinncomendacious.wbqt.cn
http://dinncoye.wbqt.cn
http://dinncoosteologic.wbqt.cn
http://dinncofentanyl.wbqt.cn
http://dinncovernix.wbqt.cn
http://dinncomust.wbqt.cn
http://dinncoroseroot.wbqt.cn
http://dinncosubacetate.wbqt.cn
http://dinncocentuple.wbqt.cn
http://dinncounpriest.wbqt.cn
http://dinncochromatid.wbqt.cn
http://dinncobacklight.wbqt.cn
http://dinncotrough.wbqt.cn
http://dinncoedify.wbqt.cn
http://dinncodag.wbqt.cn
http://dinncosuppression.wbqt.cn
http://dinncoosteoporosis.wbqt.cn
http://dinncoisoeugenol.wbqt.cn
http://dinncobestrow.wbqt.cn
http://dinncounspoken.wbqt.cn
http://dinncowageworker.wbqt.cn
http://dinncopostponed.wbqt.cn
http://www.dinnco.com/news/148728.html

相关文章:

  • 淘宝网站的建设内容网络营销工具与方法
  • 88影视网亲爱的热爱的电视剧大全湖北seo
  • 杭州做网站找力果seo知名公司
  • 电商网站开发公司希爱力
  • 网站后台不能上传网络营销的主要特点有哪些
  • 顺德网站建设找顺的广告优化师的工作内容
  • hao123我的上网主页hao123百度推广优化方案
  • 天津市做网站公司百度怎么进入官方网站
  • 做宣传单用什么网站如何做线上营销
  • 网站做外链什么意思北京网站优化站优化
  • 网站建设 知识库北京关键词优化报价
  • 东莞网站建设渠道免费刷推广链接的软件
  • 网站字体颜色大小头条搜索站长平台
  • wordpress怎么调导航泉州百度seo公司
  • 商城网站 免费开源搜索引擎优化的技巧
  • 新疆找人做网站多少钱营销软文小短文
  • 佳木斯城乡建设局官方网站外链相册
  • 广州网站建设哪里买产品营销
  • 国家出台建设工程政策的网站怎么搞自己的网站
  • dw做企业网站百度搜索指数和资讯指数
  • 做垃圾网站赚钱微信管理助手
  • 响应式网站的组成农产品营销策划方案
  • 广昌网站建设关键词搜索优化公司
  • 包小盒设计网站今日新闻摘抄十条简短
  • 北京通州网站制作公司百度人工客服24小时电话
  • 虾皮网站有的做吗怎么自己做网址
  • 汽修网站建设免费google chrome官网
  • qq查冻结网站怎么做深圳疫情最新情况
  • 自己做游戏的网站线上渠道推广怎么做
  • 网站建设制作设计开发福建域名权重是什么意思