云原生关系型数据库 PolarDB MySQL引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。PolarDB MySQL引擎基于PolarDB架构,100%兼容MySQL 5.6/5.7/8.0。

云原生关系型数据库 PolarDB O引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。PolarDB O引擎基于PolarDB架构,高度兼容Oracle。

云原生关系型数据库 PolarDB PostgreSQL引擎

PolarDB是阿里巴巴自研的新一代云原生关系型数据库,在存储计算分离架构下,利用了软硬件结合的优势,为用户提供具备极致弹性、高性能、海量存储、安全可靠的数据库服务。PolarDB PostgreSQL引擎基于PolarDB架构,100%兼容PostgreSQL 11。

Before Row-level触发器

本文为您介绍PolarDB O引擎分区表中的Before Row-level触发器以及其兼容性设置。当您跨分区更新数据时,PostgreSQL和Oracle会使用不同的触发器行为:PostgreSQL:会触发多个分区表的触发器。Oracle:仅触发一次触发器PolarDB O引擎默认...

升级步骤

例如,如果源PolarDB集群中创建了触发器,则预检查会失败并报错“PolarDB集群存在触发器”。若您确认触发器不会导致源和目标库的数据不一致,可单击继续升级并跳过触发器检查;如果有数据不一致风险,可以先删除PolarDB触发器,再点击...

事务和异常

触发器始终作为正在执行触发语句的同一事务的一部分执行。如果触发器代码块中未发生异常,则当且仅当提交包含触发语句的事务时,才会提交触发器中任何DML命令的效果。因此,如果事务回滚,则触发器中任何DML命令的效果也都将回滚。如果在...

DROP TRIGGER

删除触发器。语法DROP TRIGGER name 说明 DROP TRIGGER 可从与触发器关联的表中将其删除。该命令必须由超级用户或从中定义触发器的表的所有者运行。参数 参数 说明 name 要删除的触发器的名称。示例 删除触发器 emp_sal_trig:DROP TRIGGER...

DBA_TRIGGERS

DBA_TRIGGERS 视图提供数据库中所有触发器的信息。名称 类型 说明 owner TEXT 触发器所有者的用户名。schema_name TEXT 触发器所在 schema 的名称。trigger_name TEXT 触发器的名称。trigger_type TEXT 触发器的类型。可能值包括: BEFORE ...

ALL_TRIGGERS

ALL_TRIGGERS 视图提供可由当前用户访问的表上的触发器的相关信息。名称 类型 说明 owner TEXT 触发器所有者的用户名。schema_name TEXT 触发器所在 schema 的名称。trigger_name TEXT 触发器的名称。trigger_type TEXT 触发器的类型。可能...

USER_TRIGGERS

USER_TRIGGERS 视图提供当前用户拥有的表上的所有触发器的信息。名称 类型 说明 schema_name TEXT 触发器所在 schema 的名称。trigger_name TEXT 触发器的名称。trigger_type TEXT 触发器的类型。可能值包括:BEFORE ROW BEFORE STATEMENT ...

触发器变量

触发器代码块中,有一些特殊变量可供使用。NEW NEW 是一个伪记录名称,它引用要用于行级触发器中的插入和更新操作的新表行。此变量不适用于语句级触发器,也不适用于行级触发器的删除操作。其用法如下:NEW.column,其中 column 是定义了...

概述

触发器是一个已命名的 SPL 代码块,它与表关联并存储在数据库中。当关联表中发生指定事件时,将执行该 SPL 代码块。当该代码块执行时,触发器被视为触发。导致触发器触发的事件可以是直接或间接对表执行的插入、更新或删除的任意组合。如果...

ALTER TRIGGER

ALTER TRIGGER命令用于更改触发器定义,例如触发器名称、依赖关系、触发器开关等。语法 更改表table_name的触发器名称。ALTER TRIGGER name ON table_name RENAME TO new_name 更改表table_name的触发器name依赖的插件为extension_name。...

创建触发器

CREATE TRIGGER 命令定义将存储在数据库中的触发器并对其进行命名。语法 定义新触发器 CREATE TRIGGER 概要 CREATE[OR REPLACE]TRIGGER name { BEFORE|AFTER|INSTEAD OF } { INSERT|UPDATE| DELETE }[OR { INSERT|UPDATE|DELETE }][,.]ON ...

CREATE TRIGGER

定义新触发器。语法CREATE[OR REPLACE]TRIGGER name { BEFORE|AFTER|INSTEAD OF } { INSERT|UPDATE|DELETE }[OR { INSERT|UPDATE|DELETE }][,.]ON table [REFERENCING { OLD AS old|NEW AS new }.][FOR EACH ROW][WHEN condition][DECLARE...

BEFORE语句级触发器

下面是一个简单的之前语句级触发器示例,该触发器在对emp表执行插入操作之前显示一条消息。CREATE OR REPLACE TRIGGER emp_alert_trig BEFORE INSERT ON emp BEGIN DBMS_OUTPUT.PUT_LINE('New employees are about to be added');END;以下...

BEFORE行级触发器

以下示例是一个之前行级触发器,该触发器计算属于部门30并将插入到emp表中的每名新员工的佣金。CREATE OR REPLACE TRIGGER emp_comm_trig BEFORE INSERT ON emp FOR EACH ROW BEGIN IF:NEW.deptno=30 THEN NEW.comm:=:NEW.sal*.4;END IF;...

匿名块

块通常作为存储过程、函数、子程序或触发器的一部分编写。存储过程、函数和触发器程序被命名并存储在数据库中以供重新使用。对于快速(一次性)执行(例如测试),您只需输入块而无需提供名称或将其存储在数据库中。此类型的块称为匿名块。...

ALL_SOURCE

ALL_SOURCE 视图提供以下程序类型的源代码列表:函数、存储过程、触发器、包规格和包正文。名称 类型 说明 owner TEXT 程序所有者的用户名。schema_name TEXT 程序所属 schema 的名称。name TEXT 程序的名称。type TEXT 程序的类型,可能值...

概述

可以使用SPL创建四种不同类型的程序,即存储过程、函数、触发器和包。此外,SPL还用于创建子程序。子程序是指子存储过程或子函数,它们在外观上与存储过程和函数几乎完全相同,但不同之处在于存储过程和函数是独立程序,它们单独存储在数据...

TRUNCATE

将表清空。语法 TRUNCATE TABLE name[DROP STORAGE]说明 TRUNCATE 快速删除表中的所有行。它具有与非限定 DELETE 相同的效果,但由于它实际上不扫描表,因此速度更快。...触发器。示例 截断表 bigtable:TRUNCATE TABLE bigtable;

AFTER行级触发器

以下示例是一个之后行级触发器。当插入一个新员工行时,该触发器会将一个新行添加到该员工的jobhist表中。当更新一个现有员工时,该触发器会将最新jobhist行的enddate列(以前enddate被视为空值)设置为当前日期,并插入一个包含该员工的新...

ST_SetPoint

当一个顶点移动时尝试保持节点的关系时,该函数在触发器中特别有用。该函数支持3D对象,并且不会删除Z坐标。示例SELECT ST_AsText(ST_SetPoint(ST_GeomFromText('LINESTRING(2 1,1 1)'),0,ST_MakePoint(0,1)));st_astext-LINESTRING(0 1,1 ...

ST_SetPoint

当一个顶点移动时尝试保持节点的关系时,该函数在触发器中特别有用。该函数支持3D对象,并且不会删除Z坐标。示例SELECT ST_AsText(ST_SetPoint(ST_GeomFromText('LINESTRING(2 1,1 1)'),0,ST_MakePoint(0,1)));st_astext-LINESTRING(0 1,1 ...

AFTER语句级触发器

下面是之后语句级触发器的示例。每当对emp表执行插入、更新或删除操作时,都会向empauditlog表添加一行来记录日期、用户和操作。CREATE TABLE empauditlog(audit_date DATE,audit_user VARCHAR2(20),audit_desc VARCHAR2(20) CREATE OR ...

概述

通过将SPL代码组织为子存储过程和子函数,可以有利地运用SPL存储过程和...触发器。包。对象类型主体的存储过程和函数。在上述任意程序内声明的子存储过程和子函数。与子存储过程和子函数结构和访问相关的规则将在后面章节中进行更详细地讲述。

限定符

限定的触发器名称,例如,schema_name.trigger_name。由其所属表限定的列名称,例如,emp.empno。由其所属 schema 限定的表名称,例如,public.emp。由表和 schema 限定的列名称,例如,public.emp.empno。通常来说,只要名称在 SPL 语句的...

创建子函数

块是独立存储过程和函数、匿名块、子程序、触发器、包和对象类型方法的结构。短语标识符是块本地的意味着标识符(即,变量、游标、类型或子程序)在该块的声明部分中声明,因此可由 SPL 代码在该块的可执行部分和可选异常部分中进行访问。...

ALTER TABLE…TRUNCATE PARTITION

TABLE…TRUNCATE PARTITION不会引起可能因表而存在的触发器ON DELETE起火,但会使触发器ON TRUNCATE起火。如果为分区定义了触发器ON TRUNCATE,那么就会使所有的触发器BEFORE TRUNCATE在截断操作前就起火,并使所有的触发器AFTER TRUNCATE...

ALTER TABLE…TRUNCATE SUBPARTITION

ALTER TABLE…TRUNCATE SUBPARTITION不会引起可能因表而存在的触发器ON DELETE起火,但会使触发器ON TRUNCATE起火。如果为子分区定义了触发器ON TRUNCATE,那么就会使所有的触发器BEFORE TRUNCATE在截断操作前就起火,并使所有的触发器...

EXPLAIN语法

信息,表达式中列所属表的别名,被触发的触发器名称等。ANALYZE选项为TRUE会实际执行SQL,并获得相应的查询计划,默认为FALSE。如果优化一些修改数据的SQL 需要真实的执行但是不能影响现有的数据,可以放在一个事务中,分析完成后可以直接...

SQL性能分析

信息,表达式中列所属表的别名,被触发的触发器名称等。COSTS 会显示每个计划节点的预估启动代价(找到第一个符合条件的结果的代价)和总代价,以及预估行数和每行宽度,默认为TRUE。BUFFERS 会显示关于缓存的使用信息,默认为FALSE。该...

SQL性能分析

信息,表达式中列所属表的别名,被触发的触发器名称等。COSTS 会显示每个计划节点的预估启动代价(找到第一个符合条件的结果的代价)和总代价,以及预估行数和每行宽度,默认为TRUE。BUFFERS 会显示关于缓存的使用信息,默认为FALSE。该...

SPL 块结构

无论程序是存储过程、函数、子程序还是触发器,SPL 程序都具有相同的块结构。一个块最多包含三个部分- 可选的声明部分,必需的可执行部分以及可选的异常部分。块至少要有一个可执行部分,其中包含一条或多条SPL语句,位于关键字BEGIN与END...

块关系

块实现独立的存储过程和函数程序、匿名块、触发器、包、子存储过程和子函数。标识符(变量、游标、类型或子程序)是块本地的,意味着它在给定块的声明部分中声明。此类本地标识符可从块的可执行部分和可选的异常部分访问。父块包含另一个块...

GIN索引

本文介绍PolarDB通用倒排索引GIN(Generalized Inverted Index)。GIN是一个存储对(key、posting list)集合的索引结构,其中key是一个键值,posting list是一组出现过key的位置。如‘hello','14:2 23:4'中,表示hello在14:2和23:4这两个...

polar_comp_redwood_raw_names

FALSE,则在从Oracle目录查看时,数据库对象名称(如表名称、列名称、触发器名称、程序名称、用户名等)将显示为大写字母(有关受支持的目录视图的完整列表,请参见面向Oracle开发者的数据库兼容性参考指南)。此外,引号括住创建的具有括...

DBMS_ALERT

以下显示内容是从触发器中接收告警信号的匿名代码块显示的输出内容:Registered for alerts dept_alert and emp_alert Waiting for signal.Alert name:dept_alert Alert msg:mary added department(s)on 25-OCT-07 16:41:01 Alert status:0...

CREATE TYPE

此类嵌套结构在其他SPL程序(如函数、存储过程、触发器等)中是不允许的。在CREATE TYPE命令中,如果包括Schema名称,则在指定的Schema中创建类型,否则在当前Schema中创建类型。新类型的名称不得与同一Schema中的任何现有类型匹配,除非...

登录登出触发器

PolarDB兼容Oracle在系统触发器中的登录/登出触发器提供的以下几个PL变量:polar_login_user:登录的用户名,text类型。polar_database_name:登录的数据库名,text类型。polar_instance_num:登录的集群数量,固定为1,int类型。polar_...
共有200条 < 1 2 3 4 ... 200 >
跳转至: GO
新人特惠 爆款特惠 最新活动 免费试用