赞
踩
postgres中的视图和mysql中的视图是一样的,在查询的时候进行扫描子表的操作。作为普通表选择查询。
视图便于用户执行以下操作:
|
1、视图的创建
①、建表方式
注意创建名称 ,必须是---current-student2
结果:
②、通过sql语句创建视图
- CREATE VIEW current_employees AS
- SELECT NAME, ID, SALARY
- FROM EMPLOYEES;
2、select 、 insert 、create
①、select 查询表
②、insert 插入数据
3、删除视图
这个视图一旦删除,就是永久删除的;
①、点击视图右键--删除
②、删除sql语句进行删除
DROP VIEW current_employees;
PostgreSQL函数也称为PostgreSQL存储过程。 PostgreSQL函数或存储过程是存储在数据库服务器上并可以使用SQL界面调用的一组SQL和过程语句(声明,分配,循环,控制流程等)。 它有助于您执行通常在数据库中的单个函数中进行多次查询和往返操作的操作。
您可以在许多语言(如SQL,PL/pgSQL,C,Python等)中创建PostgreSQL函数。
语法:
- CREATE [OR REPLACE] FUNCTION function_name (arguments)
- RETURNS return_datatype AS $variable_name$
- DECLARE
- declaration;
- [...]
- BEGIN
- < function_body >
- [...]
- RETURN { variable_name | value }
- END; LANGUAGE plpgsql;
function_name
:指定函数的名称。[OR REPLACE]
:是可选的,它允许您修改/替换现有函数。RETURN
:它指定要从函数返回的数据类型。它可以是基础,复合或域类型,或者也可以引用表列的类型。function_body
:function_body
包含可执行部分。plpgsql
:它指定实现该函数的语言的名称。①、sql语句创建函数
- create or replace function student ()
- returns character(100) as $name$
- declare
- name character(100);
- begin
- select name from student;
- return name;
- end;
- $name$ language plpgsql;
②、通过定义创建函数
结果:
修改所创建的表、视图、数据库等的名称
PostgreSQL触发器是一组动作或数据库回调函数,它们在指定的表上执行指定的数据库事件(即,INSERT
,UPDATE
,DELETE
或TRUNCATE
语句)时自动运行。 触发器用于验证输入数据,执行业务规则,保持审计跟踪等。
PostgreSQL在以下情况下执行/调用触发器:在尝试操作之前(在检查约束并尝试INSERT
,UPDATE
或DELETE
之前)。或者在操作完成后(在检查约束并且INSERT
,UPDATE
或DELETE
完成后)。或者不是操作(在视图中INSERT
,UPDATE
或DELETE
的情况下)
对于操作修改的每一行,都会调用一个标记为FOR EACH ROWS
的触发器。 另一方面,标记为FOR EACH STATEMENT
的触发器只对任何给定的操作执行一次,而不管它修改多少行。
您可以为同一事件定义同一类型的多个触发器,但条件是按名称按字母顺序触发。
CREATE TRIGGER
语句用于在PostgreSQL表中创建一个新的触发器。 当表发生特定事件(即INSERT
,UPDATE
和DELETE
)时,它被激活。
语法
- CREATE TRIGGER trigger_name [BEFORE|AFTER|INSTEAD OF] event_name
- ON table_name
- [
- -- Trigger logic goes here....
- ];
在这里,event_name
可以是INSERT
,UPDATE
,DELETE
和TRUNCATE
数据库操作上提到的表table_name
。 您可以选择在表名后指定FOR EACH ROW
。
下面来看看看如何在INSERT
操作中创建触发器的语法。
- CREATE TRIGGER trigger_name AFTER INSERT ON column_name
- ON table_name
- [
- -- Trigger logic goes here....
- ];
PostgreSQL触发器可用于以下目的:
PostgreSQL别名(Alias)用于为列或表提供临时名称。您可以使用PostgreSQL别名为列或表创建一个临时名称。
通常来说,当您执行自联接时,会创建一个临时表。
语法:
- SELECT column_name AS alias_name
- FROM table_name
- conditions... ;
column_name
: 它指定要进行别名的列的原始名称。alias_name
: 它指定分配给列的临时名称。table_name
:它指定表的名称。AS
:这是可选的。大多数程序员将在对列名进行别名时指定AS
关键字,但在别名表名时不指定。注意:
alias_name
包含空格,则必须将alias_name
包含在引号中。alias_name
仅在SQL语句的范围内有效。操作:
select name as names from employees |
语法:
- SELECT column1, column2....
- FROM table_name AS alias_name
- conditions.... ;
table_name
:它指定要进行别名的表的原始名称。alias_name
:它指定分配给表的临时名称。AS
:这是可选的。大多数程序员将在对列名进行别名时指定AS
关键字,但在别名表名时不指定。注意:
alias_name
包含空格,则必须将alias_name
包含在引号中。alias_name
仅在SQL语句的范围内有效。也可参考:https://www.yiibai.com/postgresql/
是 ---》 pgAdminIII
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。