首页 > 其他分享 >openGauss学习笔记-40 openGauss 高级数据管理-锁

openGauss学习笔记-40 openGauss 高级数据管理-锁

时间:2023-08-15 18:34:35浏览次数:40  
标签:insert -- into 40 graderecord 数据管理 values openGauss

openGauss学习笔记-40 openGauss 高级数据管理-锁

如果需要保持数据库数据的一致性,可以使用LOCK TABLE来阻止其他用户修改表。

例如,一个应用需要保证表中的数据在事务的运行过程中不被修改。为实现这个目的,则可以对表使用进行锁定。这样将防止数据不被并发修改。

LOCK TABLE只在一个事务块的内部有用,在事务结束时就会被释放。

40.1 语法格式

LOCK [ TABLE ] name  IN lock_mode MODE

40.2 参数说明

  • name

    要锁定的表的名称。

  • lock_mode

    锁的模式。基本的有:

    • ACCESS EXCLUSIVE

      这个模式保证其所有者(事务)是可以访问该表的唯一事务。也是缺省锁模式。

    • ACCESS SHARE

      只读取表而不修改的锁模式。

40.3 示例

在执行删除操作时对一个表进行ACCESS EXCLUSIVE锁。

--创建示例表格。
openGauss=# CREATE TABLE graderecord  
             (  
             number INTEGER,  
             name CHAR(20),  
             class CHAR(20),  
             grade INTEGER
             );
--插入数据。
openGauss=# insert into graderecord values('210101','Alan','21.01',92);  
insert into graderecord values('210102','Ben','21.01',62);  
insert into graderecord values('210103','Brain','21.01',26);  
insert into graderecord values('210204','Carl','21.02',77);  
insert into graderecord values('210205','David','21.02',47);  
insert into graderecord values('210206','Eric','21.02',97);  
insert into graderecord values('210307','Frank','21.03',90);  
insert into graderecord values('210308','Gavin','21.03',100); 
insert into graderecord values('210309','Henry','21.03',67);  
insert into graderecord values('210410','Jack','21.04',75);  
insert into graderecord values('210311','Jerry','21.04',60);

--启动进程。
openGauss=# START TRANSACTION;

--给示例表格。
openGauss=# LOCK TABLE graderecord IN ACCESS EXCLUSIVE MODE;

--删除示例表格。
openGauss=# DELETE FROM graderecord WHERE name ='Alan';

openGauss=# COMMIT;

标签:insert,--,into,40,graderecord,数据管理,values,openGauss
From: https://blog.51cto.com/shuchaoyang/7091904

相关文章

  • ARCHICAD 26(建筑设计软件) v26.4019英文版
    ARCHICAD26是一款领先的建筑设计软件,为建筑师、设计师和工程师提供了全面的工具和功能,用于创建、分析和可视化复杂的建筑项目。点击获取ARCHICAD26 ARCHICAD26建立在先前版本的成功基础上,为用户提供了更强大、更高效的建筑设计工具。首先,ARCHICAD26引入了新的Param-O......
  • HTTP代理出现400错误的原因及解决办法
    在使用HTTP代理过程中,会经常出现各种代码错误的提示,以下是使用HTTP代理出现400代码的原因和解决办法使用HTTP代理时,出现400BadRequest错误代码通常表示客户端发送的请求格式不正确或包含了无效的参数。下面是一些可能导致400错误的原因:请求参数错误:请求中的参数格式不正确或缺少......
  • 提速 40%,融云基于 QUIC 深度优化通信协议
    各分位(P99、P95、P50)连接速度提升30%~50%;关注【融云全球互联网通信云】了解更多网络延迟低连接耗时终端占比提升50%,高连接耗时终端占比压缩至1%以内;在基础设施受限的弱网地区和连接效果难保证的跨网场景下,均可获得与正常网络相当的顺畅体验。——这些都是融云基于QUIC深度优......
  • VTK 实例40:均值滤波(图像光滑)
    1#include"vtkAutoInit.h"2VTK_MODULE_INIT(vtkRenderingOpenGL2);3VTK_MODULE_INIT(vtkInteractionStyle);45#include<vtkSmartPointer.h>6#include<vtkImageData.h>7#include<vtkImageConvolve.h>8#include<vt......
  • i7 13700HX和 r7 7840HS差距 酷睿i713700HX和 锐龙r77840HS对比
    锐龙77840HS,其采用最新的Zen4架构,工艺也升级到了最新的台积电4nm。8核心16线程,40MB的缓存,基础频率3.8GHz,最高频率可以达到5.1GHz。GPU搭载全新的Radeon780M选i713700HX还是r77840HS这些点很重要 http://www.adiannao.cn/dyi713700hx采用10nm工艺16个核和24......
  • 微信ipad协议8.0.40 加好友功能
    友情链接:geweapi.com点击即可访问!好友请求验证小提示:v_3 v_4可以参考搜索接口请求URL:http://域名地址/api/contacts/verifyuser请求方式:POST请求头:Content-Type:application/jsonX-GEWE-TOKEN:后台获取参数:参数名必填数据类型说明appid是string设备idconfig否object其他配置......
  • ADM4016I The index indexName on the source table source-table does not match any
    ADM4016I Theindex indexName onthesourcetable source-table doesnotmatchanypartitionedindexesonthetargettable target-table .ALTERTABLEATTACHprocessingcontinues.https://www.ibm.com/docs/en/db2/10.5?topic=messages-adm0000-adm5999LastUp......
  • 评测i9 13900hx和​​R9 7940HS选哪个 酷睿i913900hx和​​锐龙R97940HS对比
    i913900Hx采用10nm制作工艺最高睿频5.4GHz二十四核心三十二线程三级缓存36MB热设计功耗(TDP)157W选i913900hx和R97940HS这些点很重要看过你就懂了 http://www.adiannao.cn/dy​​R97940HS采用了4nm工艺,采用8核Zen4CPU,并且搭载最新的锐龙AI引擎,CPU频率可达5.2GHz......
  • 肌电传感器 SEN0240
    传感器购买连接。传感器相关信息,这个也是。传感器驱动示例代码:/**Copyright2017,OYMotionInc.*Allrightsreserved.**Redistributionanduseinsourceandbinaryforms,withorwithout*modification,arepermittedprovidedthatt......
  • openGauss学习笔记-39 openGauss 高级数据管理-分区表
    openGauss学习笔记-39openGauss高级数据管理-分区表一张表内的数据过多时,就会严重影响到数据的查询和操作效率。openGauss支持把一张表从逻辑上分成多个小的分片,从而避免一次处理大量数据,提高处理效率。openGauss数据库支持这些划分类型:范围分区表:指定一个或多个列划分为多个......