标签: SQL

7 篇文章

DM数据库中的一些巧妙的SQL
一、前言 本文可能不局限于DM数据库,用法是否可用需自行验证。 二、汇总 2.1 字段中是否包含中文 --查询NAME字段包含中文的 SELECT NAME FROM CS_ZW WHERE ASCIISTR(NAME) LIKE '%\%'; --查询NAME字段不包含中文的 SELECT NAME FROM CS_ZW WHE…
DM数据库与会话相关的SQL和命令
一、简单概述 通俗来讲,会话(Session) 是通信双方从开始通信到通信结束期间的一个上下文(Context)。这个上下文是一段位于服务器端的内存:记录了本次连接的客户端机器、通过哪个应用程序、哪个用户登录等信息。 连接(Connection):连接是从客户端到ORACLE实例的一条物理路径。连接可以在网络上建立,或者在本机通过…
DM数据库服务器分析 CPU 爆满的原因
一、问题描述 当发现达梦数据库所在服务器CPU爆满需要排查时,可通过如下方法排查。 二、问题排查 (1)首先,查询已执行超过2秒的活动SQL SELECT * FROM ( SELECT SESS_ID, SQL_TEXT, DATEDIFF (SS, LAST_RECV_TIME, SYSDATE) Y_EXETIME, SF_…
DM数据库SQL报错之记录超长
一、问题描述 达梦数据库在初始化实例时会有一个参数PAGE_SIZE即页大小,默认是8K。 配置不同的页大小,字段所支持的存储长度会有所不同,会有如下限制 [wpdatatable id=21] 当表中一行记录所以字段长度之和占用页大小的一半时就会出现记录超长的报错。 二、问题解决 考虑到实际场景,解决方法有如下几种: 找到表中V…
DM数据库SQL报错之字符串截断
一、问题描述 在达梦数据库中报错字符串截断存在多种情况,报错原因不一。 二、问题解决 2.1 大字段模糊查询 当查询条件中字段为TEXT,并进行LIKE模糊查询时报错。 报错原因是因为存在隐式转换,转换时截断而导致报错。 解决方法一 首先,查看一下该大字段长度 SELECT DBMSLOB.GETLENGTH(字段); 再根据长度…
DM数据库SQL报错之多版本操作冲突过多 或 Too many mvcc conflict
一、问题描述 MVCC 多版本并发控制是指维持一个数据的多个版本,在保证事务隔离级的情况下,使得读写操作没有冲突,提高了数据库并发读写的性能。因此可以解决在并发读写数据库时,做到在读操作时不用阻塞写操作,写操作也不用阻塞读操作。当对一张表批量修改且并发量较大时,可能会报 MVCC 多版本操作冲突过多的错误。多会话同时修改表数据时报…
DM数据库SQL报错之试图在blob或者clob列上排序或比较
一、问题描述 在达梦数据库中对大字段类型的列进行排序或比较时会报错[-2685]:试图在blob或者clob列上排序或比较 测试数据演示示例: 建表 CREATE TABLE T_BCLOB (ID INT PRIMARY KEY, BL BLOB, CL CLOB); 使用SQLark的数据生成功能,生成测试数据。 使用ORDE…