达梦数据库探查经验文档
达梦数据库使用
达梦数据库使⽤1、修改最⼤连接数先查看当前的最⼤连接数:select SF_GET_PARA_VALUE(2, 'MAX_SESSIONS');修改最⼤连接数:ALTER SYSTEM SET 'MAX_SESSIONS' =1000 spfile;重启数据库:su - dmdba; cd dmdbms;./DmServiceDmServiceDMERVER stop;./DmServiceDmServiceDMERVER start (需要⾸先切换到dmdba⽤户,进⼊bin⽬录再执⾏重启命令)2、查看数据当前连接数:su - dmdba; cd dmdbms; ./disql 然后输⼊⽤户名密码select * from v$sessions where state='ACTIVE';select count(*) from v$sessions;select SESSID,state,clnt_ip from v$sessions where state='ACTIVE';-- 关闭连接sp_close_session(1346445624);select count(*) from V$CONNECT;SELECT * FROM V$CONNECT;select * from v$sessions where state='ACTIVE';select SF_GET_PARA_VALUE(2, 'MAX_SESSIONS');SELECT A.SESS_ID AS 会话id,A.SQL_TEXT AS SQL语句,A.STATE AS 会话状态,A.N_USED_STMT AS 当前会话使⽤句柄数量,A.CURR_SCH AS 当前模式,ER_NAME AS ⽤户名,A.TRX_ID AS 事务ID,A.CREATE_TIME AS 会话创建时间,A.CLNT_TYPE AS 客户端类型,A.TIME_ZONE AS 时区,A.OSNAME AS 操作系统名称,A.CONN_TYPE AS 连接类型,B.PROTOCOL_TYPE AS 协议类型,B.IP_ADDR AS 访问ip地址FROM V$SESSIONS A, V$CONNECT Bwhere A.Sess_id= B.SADDRORDER BY SF_GET_EP_SEQNO(A.rowid),A.Sess_id;-- 关闭IDLE连接sp_close_session(1346445624); -- 参数为会话ID。
达梦数据库 indexof方法
达梦数据库indexof方法达梦数据库是我国自主研发的数据库产品,为开发者提供了丰富的功能和方法。
本文将详细介绍达梦数据库中的indexof方法,帮助读者更好地理解并运用这一方法。
一、达梦数据库简介达梦数据库(DMDB)是一款具有完全自主知识产权的数据库产品,由我国达梦公司研发。
它支持标准SQL语言,具备高可用性、高性能、可扩展性等特点,广泛应用于金融、电信、政府等领域。
二、indexof方法概述indexof方法在达梦数据库中用于在字符串中查找指定子串的位置。
如果找到子串,返回子串第一次出现的索引;如果没有找到,返回0。
三、语法以下是indexof方法的语法:```indexof(str, subStr)```参数说明:- str:源字符串,可以是任意字符串。
- subStr:要查找的子串。
四、示例以下是一个使用indexof方法的示例:```SELECT indexof("达梦数据库", "数据库") FROM dual;```执行结果为:```4```说明子串“数据库”在源字符串“达梦数据库”中第一次出现在索引位置4。
五、注意事项在使用indexof方法时,需要注意以下几点:1.indexof方法区分大小写,即大小写不同的字符被视为不同的字符。
2.如果源字符串或子串为空,indexof方法返回0。
3.indexof方法可以在SQL语句的WHERE、SELECT等子句中使用。
六、总结通过本文的介绍,相信读者已经对达梦数据库的indexof方法有了深入的了解。
在实际开发过程中,灵活运用indexof方法,可以方便地在字符串中进行查找操作,提高数据处理效率。
达梦数据库的评估
达梦数据库的评估经过翻阅官⽅及相关论坛资料,从数据库⼏个关键的⽅⾯来评估达梦数据库,整理资料如下(附件中附有相关⽂档):简介:达梦数据库是武汉达梦公司(成⽴于2000年)推出的具有完全⾃主知识产权的关系型数据库,简称DM。
DM先后主要推出的是DM7和DM8 这2款数据库产品,其中最核⼼的是达梦数据库管理系统DM系列新⼀代更新的DM8,可以说是国产数据库⾥的领军产品,流⾏度:在国产数据库市场份额常年名列前茅,2021年8⽉在国内数据库权威排⾏系统中,占有率在国产数据库中第⼀,流⾏度第三,仅次于TiDB,OceanBase语法:SQL语法上与Oracle数据库⾼度相似,实现分页⽅便(⽀持top,limit),在函数、视图、存储过程、序列、触发器的语义语法上类似于Oracle,均可实现AFC软件相应的OLTP、OLAP功能⽀持数据容量:达梦数据库是通过国家安全三级认证(2001年)、通过10TB数据库容量测试<2005年)的数据库产品,现已通过100TB数据库容量测试,通过中国⼈民解放军军B级认证的数据库产品。
性能:基于benchmarkSQL的压⼒测试单机性能达梦数据库的成绩可达10万-60万(tpmC)对于复杂查询,⽐如TPC-H和TPC-DS, 达梦的性能也很不错。
梦数据库可以在10TB级复杂数据上运⾏,性能稳定,情况良好,满⾜⼀般业务场景下对性能的基本要求。
存储结构与扩容⽅案:存储上DM数据库是⼀系列物理⽂件的组合,这和Oracle完全⼀致。
达梦也分为表空间、段、簇、页,这⼏个结构。
⼀个表空间包含⼀个或多个⽂件,表数据存放在数据⽂件上。
当数据库需要扩容时有三种⽅案:1.创建新的表空间2.修改表空间下的数据⽂件⼤⼩3.在表空间下增加新的数据⽂件⼀般可通过定时调⽤存储过程对表空间实现⾃动扩容,可对数据库存储的⾃动扩容备份与还原:在DM数据库中,备份被分为库备份、表空间备份、表备份、归档备份四个层⾯,在库备份中,DM⽀持全库备份与增量备份,⽀持冷热备份,联机还原仅⽀持表级还原,整库、表空间还原只能脱机还原备份与还原可通过DMRAMN⼯具、定时调⽤SQL脚本等⽅式实现对库的定时⾃动备份只是操作相⽐于⽬前正在⽤的Sybase稍微复杂些以下是在公司测试环境安装数据库后,针对备份与还原做了相应测试,备份与还原效率如下联机全库备份测试:备份1GB的库所需时间:2分3秒脱机库还原测试:还原1GB的库所需时间:2分32秒⼴泛应⽤⾏业:国家电⽹、航空航天、国防军⼯、⾦融银⾏、电⼦政务、公检法司、教育、消防等安装环境:DM数据库服务端可以安装在以下系统环境Windows、 Linux 、 Solaris 、AIX、HP-UNIX、FreeBSDDM 客户端程序由 Java 编写,具有良好的跨平台特性,均可运⾏在上述的操作系统上DM⾃带常⽤的客户端⼯具(安装时⾃带):SQL开发⼯具:Manager 数据迁移⼯具:DTS 控制台⼯具:Console 性能监控⼯具:Monitor。
达梦数据库使用手册
达梦数据库使用手册达梦数据库(DmDB)是由达梦软件发布的高性能关系型数据库管理系统,也是我国自主研发的国产数据库产品,结合了关系数据库和对象数据库的特点,使用简便、开发效率高、运行性能优越,是一款非常好的数据库产品。
达梦数据库拥有强大的多核处理技术,高性能查询和索引机制,多层安全保护,高容错性等特点,支持多种语言编程,具有极高的处理能力。
1. 安装操作达梦数据库的安装可在多种操作系统上进行,操作系统要求遵循最新的“Server + OS + Database”的最佳实践。
在安装之前,首先利用安装前准备工具对软件进行校验,以确保正确安装达梦数据库。
需要特别指出的是,达梦数据库的安装需要用到“DmNet”网络服务器软件,该软件是达梦数据库的核心服务软件,用于实现达梦数据库的系统参数管理、客户端连接管理等操作。
2. 数据库建立达梦数据库的建立是依靠已安装的DmNet管理工具或SQL脚本进行的,可以从操作系统界面使用DmNet管理工具创建新的数据库,或者使用SQL脚本来创建数据库。
3. 表的创建达梦数据库支持使用lsql工具,脚本文件或图形界面创建数据表。
可以选择编写SQL 语句,然后使用脚本来批量创建数据表,也可以在DmNet工具中使用图形界面来创建数据表。
4. 数据表的理解数据库理解是指对存储在数据库表中信息的分析和掌握,以便能够准确地获取信息。
在理解查询、以及关系型数据库设计与编程中,数据库理解的重要性不言而喻。
理解准确的数据表结构,对开发数据库应用系统、优化系统性能都有重要的作用。
5. 编程语言达梦数据库提供多种编程语言,如SQL、PL/SQL、PHP、Java等,可以依据自身的需求,选择不同的语言来开发应用程序。
6. 查询技术达梦数据库提供了丰富的查询手段,可以根据查询条件执行Select、Join、Group By、Having、Order By、Inner Join等查询操作。
同时,达梦数据库还支持SQL语句嵌套查询,使查询操作更丰富,更精准。
达梦数据库实训总结
达梦数据库实训总结达梦数据库是一种关系型数据库管理系统,广泛应用于企业级应用和大型数据处理领域。
在达梦数据库实训中,我们学习了数据库的基本概念、设计原则和操作技巧,并通过实践掌握了数据库的建立、维护和优化等方面的知识。
本文将对达梦数据库实训进行总结,以便更好地理解和应用这一数据库管理系统。
达梦数据库实训使我对数据库的概念和特点有了更深入的了解。
数据库是一种用于存储、管理和操作数据的系统,具有数据共享、数据独立性和数据持久性等特点。
在实训中,我们学习了数据库的三层模式结构,即外模式、概念模式和内模式,以及数据库的四个基本操作:查询、插入、更新和删除。
这些知识为我们后续的实践操作奠定了坚实的基础。
达梦数据库实训让我掌握了数据库的设计和规范方法。
在实训中,我们学习了实体关系模型(ERM)和关系模式(RM)的概念,以及数据库设计的基本原则。
通过实践,我们学会了如何根据需求分析、实体识别和关系建立等步骤进行数据库的设计。
同时,我们还学习了数据库的约束和完整性规则,如主键约束、外键约束和唯一性约束等,以确保数据库的数据一致性和完整性。
达梦数据库实训还让我了解了数据库的索引和优化技术。
索引是提高数据库查询效率的重要手段,通过在数据库表中建立索引,可以加快查询速度。
在实训中,我们学习了索引的原理和分类,以及如何在达梦数据库中创建和管理索引。
同时,我们还学习了数据库的性能优化技术,如查询优化、表空间管理和缓存管理等,以提升数据库的整体性能和响应速度。
值得一提的是,在达梦数据库实训中,我们还学习了数据库的备份和恢复技术。
数据库的备份是保护数据库免受数据丢失和灾害的重要手段。
在实训中,我们学习了数据库备份的策略和方法,如完全备份、增量备份和差异备份等。
同时,我们还学习了数据库的恢复技术,如事务日志的应用和数据恢复的步骤,以确保数据库在意外故障发生时能够快速恢复正常运行。
达梦数据库实训使我对数据库的概念、设计和操作有了更深入的了解,并掌握了数据库的建立、维护和优化等方面的技能。
达梦数据库学习(四、表空间管理)
达梦数据库学习(四、表空间管理)达梦数据库学习(四、表空间管理)上期回顾:⼀、数据库的物理结构和逻辑结构物理结构:⽂件系统(XFS、ext4、NTFS、DMASM等分析场景:⽂件系统(有缓存,易扩展)、裸设备(有缓存,不易扩展)格式化:mkfs、format、inode、block逻辑结构:数据库----表空间(⼀个或多个⽂件构成)----段----簇----页备注:达梦数据库不⽀持传输表空间(达梦通过导出导⼊的⽅式来实现把⼀个库移到另⼀个库)表空间部分需要掌握的内容:1、数据库默认表空间的作⽤SQL>select tablespace_name from dba_tablespaces;⾏号 TABLESPACE_NAME---------- ---------------1 SYSTEM 系统表空间存放数据字典2 ROLL 回滚表空间存放回滚段3 TEMP 临时表空间临时段4 MAIN 默认表空间5 BOOKSHOP 某⽰例库表空间6 DMHR 某⽰例库表空间7 HMAIN HUGE表空间存放列存储SQL>select tablespace_name,file_name from dba_data_files;⾏号 TABLESPACE_NAME FILE_NAME---------- --------------- -----------------------------1 SYSTEM /dm8/data/DAMENG/SYSTEM.DBF2 DMHR /dm8/data/DAMENG/DMHR.DBF3 BOOKSHOP /dm8/data/DAMENG/BOOKSHOP.DBF4 MAIN /dm8/data/DAMENG/MAIN.DBF5 TEMP /dm8/data/DAMENG/TEMP.DBF6 ROLL /dm8/data/DAMENG/ROLL.DBFSQL>select tablespace_name,BYTES/1024/1024 from dba_free_space;⾏号 TABLESPACE_NAME BYTES/1024./1024---------- --------------- ----------------1 SYSTEM 17.19531252 DMHR 127.93753 BOOKSHOP 149.10156254 MAIN 127.53906255 TEMP 9.93756 ROLL 118.88281252、创建表空间注意创建表空间中所有⼤⼩单位都是M,且不需要写单位案例1:规划⼀个表空间TBS1,要求初始⽂件⼤⼩为31M;SQL>create tablespace TBS1 datafile ‘/dm8/data/DAMENG/tbs1.dbf’ size 31;出现错误提⽰“数据⽂件⼤⼩⽆效”为什么呢?SQL>select page;--查看数据库页⼤⼩;SQL>select 8192*4096/1024/1024;--32M根据页⼤⼩算表空间单个数据⽂件最⼩⼤⼩。
达梦数据库模糊查询语法
达梦数据库模糊查询语法介绍数据库是一个存储和管理数据的系统,而查询是在数据库中检索和获取信息的过程。
在实际的数据库操作中,经常会遇到需要模糊查询的情况,因为有时候我们只知道一部分关键字或者只有模糊的信息,这时候就需要使用模糊查询来获取我们想要的数据。
达梦数据库(DMDB)是由中国科学院计算技术研究所自主研发的一种关系型数据库系统,它在国内具有一定的市场份额。
本文将着重介绍达梦数据库中的模糊查询语法,帮助读者更好地进行数据检索和查询。
模糊查询概述模糊查询是一种根据不完整的信息匹配数据库中的数据的方法。
它通常用于在数据库中搜索或查询与给定的模式或通配符匹配的字符串。
模糊查询为用户提供了一种在不完全了解数据的情况下获取有关的数据的方式,可以大大提高数据的检索效率和准确性。
达梦数据库支持标准SQL语法以及自定义的通配符来进行模糊查询。
在下面的内容中,我们将重点介绍达梦数据库中的模糊查询语法及其用法。
LIKE语句LIKE语句是在达梦数据库中进行模糊查询的主要方式之一。
LIKE语句使用通配符将匹配规则应用于查询条件,从而实现模糊匹配。
通常,LIKE语句的语法如下:SELECT 列名 FROM 表名 WHERE 列名 LIKE '模式';在上述语句中,需要将列名和表名替换为实际的列和表名称,模式是你希望匹配的内容。
通配符达梦数据库支持两种通配符用于模糊查询:百分号(%)和下划线(_)。
下面将详细介绍这两种通配符的用法。
百分号(%)百分号通配符(%)表示任何字符的任意个数(包括零个字符)。
它可以出现在模式的任意位置,甚至可以是连续的多个百分号。
下面是一些使用百分号通配符的例子:•%at:表示以“at”结尾的任何单词,如“cat”、“hat”等。
•c%:表示以“c”开头的任何单词,如“cat”、“cut”等。
•%e%:表示包含“e”的任何单词,如“hello”、“example”等。
下划线(_)下划线通配符(_)表示任何单个字符。
达梦数据库操作手册
达梦数据库操作手册
达梦数据库操作手册中介绍了达梦数据库的基本概念、安装及应用、数据库管理、数据查询以及性能优化等内容。
达梦数据库是一款高性能的,可互操作的关系型数据库管理系统,用来存储和管理数据,可满足大量的时间应用需求,同时支持事务处理,可以使事务安全、一致和可重复。
一,安装达梦数据库
1.安装环境准备:操作系统、软件和授权信息准备
2.安装准备:选择安装类型、执行安装脚本、检查安装结果
3.配置达梦数据库:创建数据库、创建用户、设置参数
二,数据库管理
1.数据库备份与恢复:管理高可用数据库的备份和恢复,以及其它数据库备份和恢复的方法
2.表空间管理:管理表空间,使用表空间数据库对象存储数据;管理数据库构架,包括更改表空间大小
3.索引管理:创建和管理数据库索引,以加快查询效率
4.用户管理:管理用户及其权限,以及创建和删除用户
5.日志管理:管理数据库日志,包括文本和bdbc日志
三,数据查询
1.SQL语句:熟悉SQL语句的基本结构,包括SELETE、INSERT、UPDATE、DELETE等
2.存储过程:熟悉存储过程的编写,并学习使用它们
3.视图:学习视图的概念,了解如何创建和使用它们
四,性能优化
1.查询优化:了解查询优化的概念,以及如何计划和执行查询
2.表和索引优化:设置表和索引,优化存储过程
3.缓存管理:通过缓存管理来提高数据库读写性能
4.数据库参数优化:调整数据库参数,优化查询效率。
linux达梦数据库 使用手册
Linux达梦数据库使用手册
Linux达梦数据库是一款开源数据库管理系统,广泛应用于企业和个人。
本手册将向您介绍如何在Linux操作系统上正确安装、配置和使用达梦数据库,帮助您快速上手并提高工作效率。
正文
一、安装达梦数据库
1. 确认您的Linux操作系统版本和硬件要求,确保满足达梦数据库的安装要求。
2. 下载达梦数据库的安装包,可以从官方网站或相关开源软件平台获取。
3. 解压安装包到您想要安装的目录。
4. 执行安装脚本,并按照提示完成安装过程。
二、配置达梦数据库
1. 打开达梦数据库的配置文件,通常位于安装目录下的'conf'文件夹中。
2. 根据您的需求,修改数据库的配置参数,如端口号、缓存大小等。
3. 保存配置文件并重启达梦数据库服务,使配置生效。
三、使用达梦数据库
1. 打开终端并登录到Linux系统。
2. 输入命令'dm'以启动达梦数据库命令行界面。
3. 在命令行中输入SQL语句进行数据库操作,如创建表、插入数据等。
4. 通过命令行工具或图形化界面工具管理和监控达梦数据库,如备份恢复、性能优化等。
四、常见问题解决办法
1. 如果在安装过程中遇到错误,可查阅官方文档或搜索相关问题解决方法。
2. 如果数据库无法启动或连接失败,可检查数据库配置和网络连接是否正确。
3. 如果遇到性能问题,可通过优化配置、增加硬件资源等方式进行调整。
总结:
Linux达梦数据库是一款功能强大的开源数据库系统,本手册介绍了其在Linux操作系统上的安装、配置和使用方法。
达梦数据库介绍(二)
达梦数据库介绍(二)引言概述:达梦数据库是一种高性能、可靠性强的数据库管理系统。
在本文中,我们将继续介绍达梦数据库的相关特点和功能。
本次介绍将主要涵盖以下五个大点:高可用性技术、数据安全措施、可扩展性、性能优化以及应用案例。
通过深入了解这些方面,您将更好地理解达梦数据库的价值和适用场景。
正文内容:1. 高可用性技术- 异地灾备:通过异地多中心架构,实现数据库的异地备份和容灾,确保数据安全性和可用性。
- 自动故障恢复:通过系统监控和自动故障切换机制,实现对数据库故障的自动检测和快速恢复。
- 负载均衡与容错:通过负载均衡技术和容错机制,实现系统资源的合理利用和服务的高可用性。
2. 数据安全措施- 数据加密:提供数据加密功能,保护敏感数据在传输和存储过程中的安全性。
- 用户权限管理:支持细粒度的访问控制,确保只有授权用户才能访问和修改数据库中的数据。
- 审计与监控:提供全面的审计功能和监控报告,帮助管理员监测数据库的使用情况并及时发现异常行为。
3. 可扩展性- 分布式架构:支持分布式部署,在集群环境中实现数据的分布和负载均衡,提高系统的性能和可扩展性。
- 弹性伸缩:根据业务需求,动态调整数据库的资源配置,实现系统的弹性伸缩和容量扩展。
4. 性能优化- 查询优化:通过支持索引、分区表和并行查询等技术,提高查询性能和响应速度。
- 缓存机制:通过数据缓存和查询缓存等技术,有效减少磁盘IO和网络开销,提升系统的运行效率。
- 数据压缩与存储:提供数据压缩和存储优化的功能,有效减少存储空间和提高系统性能。
5. 应用案例- 金融行业:达梦数据库在银行、证券等金融领域中广泛应用,满足高并发、高可靠性和高安全性的需求。
- 电商平台:达梦数据库在电商平台中支持海量数据处理,保证快速响应和可靠的订单管理。
- 大数据分析:达梦数据库提供对大数据的高效处理和分析能力,应用于大数据领域的业务场景。
总结:通过本文的介绍,我们可以看出,达梦数据库在高可用性技术、数据安全措施、可扩展性、性能优化和应用案例方面具有显著的优势。
达梦数据库cpu过高 排查方法
达梦数据库cpu过高排查方法达梦数据库是一种高性能、高可靠的关系型数据库管理系统。
然而,在实际使用过程中,有时会遇到CPU过高的问题,这会影响数据库的性能和稳定性。
为了解决这个问题,我们需要进行一系列的排查和优化。
本文将介绍一些常见的排查方法和优化建议。
1. 检查数据库负载:首先,我们需要确认数据库的负载情况。
可以通过数据库监控工具或者系统资源监控工具查看数据库的CPU使用率、内存使用情况、磁盘IO等指标。
如果负载过高,可能是由于数据库访问量大或者查询复杂度高导致的。
2. 检查数据库连接:数据库连接数过多也会导致CPU过高的问题。
可以通过查看数据库的连接数和连接的状态来判断是否存在连接过多的问题。
如果连接数过多,可以考虑调整数据库连接池的配置,增加连接数或者优化连接复用。
3. 检查慢查询:慢查询是指执行时间较长的查询语句,这些查询可能会消耗大量的CPU资源。
可以通过数据库的慢查询日志或者性能监控工具来查找慢查询语句,并进行优化。
优化方法包括添加索引、调整查询语句、优化表结构等。
4. 检查数据库参数配置:一些数据库参数的配置也会影响数据库的性能表现。
例如,数据库的缓冲池大小、查询缓存的开启与否、日志大小等。
可以通过查看数据库的配置文件或者数据库管理工具来确认参数配置,并进行调整。
5. 检查数据库版本和补丁:有些数据库版本存在一些性能问题或者bug,可能会导致CPU过高。
可以通过查看数据库的版本信息和官方文档来确认是否存在已知的性能问题,并及时打补丁或者升级版本。
6. 检查数据库表和索引:数据库的表结构和索引设计也会影响数据库的性能。
如果表结构设计不合理或者缺少必要的索引,可能会导致查询效率低下,CPU负载过高。
可以通过查看表的设计和索引情况,并进行调整和优化。
7. 检查数据库中的死锁:死锁是指多个事务互相等待对方释放资源而无法继续执行的情况。
如果数据库中存在大量的死锁,可能会导致CPU过高。
可以通过查看数据库的死锁日志或者使用专业的死锁检测工具来解决死锁问题。
达梦数据库 无效的数组查询对象-概述说明以及解释
达梦数据库无效的数组查询对象-概述说明以及解释1.引言1.1 概述概述部分主要介绍本文所要讨论的主题——达梦数据库的无效的数组查询对象问题。
首先,我们会对达梦数据库进行简要的介绍,包括它的基本特性和应用领域。
然后,我们会引出本文要解决的具体问题,即无效的数组查询对象。
接下来,我们将对这一问题进行深入分析,并提出相应的解决方法。
最后,在结论部分,我们会对整篇文章进行总结,并就达梦数据库的发展提出一些建议,并展望它在未来的发展前景。
通过阅读本文,读者将能够全面了解达梦数据库的无效的数组查询对象问题,以及相关的解决方案和发展趋势。
1.2 文章结构文章结构部分的内容可以采用以下方式进行编写:文章结构:本文共分为引言、正文和结论三个部分。
引言部分主要包括三个方面的内容:概述、文章结构和目的。
1)概述:简要介绍达梦数据库无效的数组查询对象问题,引起读者的兴趣。
2)文章结构:介绍本文的整体结构,指出文章的各个主要部分和各个小节,以便读者对文章的组织和内容有一个整体的把握。
3)目的:说明本文撰写的目的和意义,即为读者提供关于达梦数据库无效的数组查询对象问题的解决方法和建议。
正文部分主要包括三个方面的内容:了解达梦数据库、无效的数组查询对象问题以及问题的分析与解决方法。
1)了解达梦数据库:介绍达梦数据库的基本情况,包括其特点、应用场景等,为后续问题分析打下基础。
2)无效的数组查询对象:详细描述达梦数据库中遇到的无效数组查询对象问题,包括问题的表现、影响和可能的原因等。
3)问题分析与解决方法:分析无效数组查询对象问题的根本原因,并提供解决方法和建议,包括调整查询语句、优化索引等方面的技巧和注意事项。
结论部分主要包括三个方面的内容:总结、对达梦数据库的建议和展望未来。
1)总结:对全文进行总结,概括本文涉及的问题、分析和解决方法。
2)对达梦数据库的建议:根据本文对无效数组查询对象问题的分析和解决方法,提出对达梦数据库的改进和优化建议。
达梦数据库查询表结构
达梦数据库查询表结构达梦数据库是中国自主研发的一款关系型数据库管理系统。
在进行数据库查询时,了解表结构是非常重要的,因为它可以帮助我们理解数据库中的数据组织方式和表之间的关系。
下面是一些相关参考内容,帮助我们查询达梦数据库的表结构。
1. DESC命令:DESC命令用于查看表的结构。
在达梦数据库中,可以使用以下命令来查看表的结构:```DESC table_name;```该命令将返回表名、字段名、数据类型、字段长度、默认值等信息。
通过这些信息,我们可以了解表中每个字段的定义和属性。
2. INFORMATION_SCHEMA表:在达梦数据库中,有一些特殊的系统表,例如INFORMATION_SCHEMA.TABLES和INFORMATION_SCHEMA.COLUMNS。
这些表包含了数据库和表的元数据信息。
可以使用以下命令查询表结构:```SELECT COLUMN_NAME, DATA_TYPE,CHARACTER_MAXIMUM_LENGTH, IS_NULLABLEFROM INFORMATION_SCHEMA.COLUMNSWHERE TABLE_NAME = 'table_name';```这将返回表名、字段名、数据类型、字段长度和是否允许为空等信息。
通过查询这些系统表,我们可以获取更加详细和全面的表结构信息。
3. SHOW CREATE TABLE语句:SHOW CREATE TABLE语句可以显示创建表时的完整语句,包括表的结构和约束等。
在达梦数据库中,可以使用以下命令来查看表的完整创建语句:```SHOW CREATE TABLE table_name;```这将返回创建表的SQL语句。
通过查看完整的创建语句,我们可以了解表的结构、默认值、主键、外键等约束定义。
4. 系统提供的图形化工具:达梦数据库也提供了一些图形化的管理工具,例如DMS(DBMS Maintenance System)和DolphinDB。
达梦数据库性能测试软件操作
达梦数据库性能测试软件操作(1)创建用户benchmarksql/123456789,并开通权限。
(2)./runSQL.sh props.dm sqlTableCreates(3)./runLoader.sh props.dm numWAREHOUSES 10(4)disql执行sqlSequenceCreate.sql,在数据库管理工具中执行。
(5)./runBenchmark.sh props.dm备注:编辑props.dm,driver=dm.jdbc.driver.DmDriverconn=jdbc:dm://localhost:5236user=benchmarksqlpassword=123456789warehouses=100terminals=20//To run specified transactions per terminal- runMins must equal zero runTxnsPerTerminal=0//To run for specified minutes- runTxnsPerTerminal must equal zerorunMins=60//Number of total transactions per minutelimitTxnsPerMin=0//The following five values must add up to 100//The default percentages of 45, 43, 4, 4 & 4 match the TPC-C specnewOrderWeight=45paymentWeight=43orderStatusWeight=4deliveryWeight=4stockLevelWeight=4warehouses 是仓库建立库,增加内容,服务器一般可以建立100个。
Terminals是终端并发数量,服务器一般是建立20个。
达梦数据库常见问题-命令行工具-快速装载工具
达梦数据库常见问题-命令⾏⼯具-快速装载⼯具
⾼效的数据装载⽅式
达梦除了dts和dimp之外,还提供了快速数据装载命令⾏⼯具dmfldr,通过使⽤ dmfldr ⼯具能够把按照⼀定格式排序的⽂本数据以简单、快速、⾼效的⽅式载⼊到 DM数据库中,或把 DM 数据库中的数据按照⼀定格式写⼊⽂本⽂件。
dmfldr 实际上除了客户端⼯具,还包含⼀个在 DM7 数据库服务器中的dmfldr 功能模块,它们共同完成 dmfldr 的各项功能。
当进⾏数据载⼊时, dmfldr 客户端接收⽤户提交的命令与参数,分析控制⽂件与数据⽂件,将数据打包发送给服务器端的 dmfldr 模块,由服务器完成数据的真正装载⼯作。
并分析服务器返回的消息,必要时根据⽤户参数指定⽣成⽇志⽂件与错误数据⽂件。
当进⾏数据导出时, dmfldr 客户端接收⽤户提交的命令与参数,分析控制⽂件,将⽤户要求转换成相应消息发送给服务器端的 dmfldr 模块。
服务器解析并打包需要导出的数据,发送给 dmfldr 客户端,客户端将数据写⼊指定的数据⽂件,必要时根据⽤户参数指定⽣成⽇志⽂件。
使⽤⽅法为,在程序⽬录bin下执⾏
./dmfldr userid=SYSDBA/SYSDBA control=’/opt/fldr.ctl’
其中fldr.ctl需要⼿动进⾏配置,控制⽂件⽤于指定数据⽂件中数据的格式,在数据载⼊时, dmfldr 根据控制⽂件指定的格式来解析数据⽂件;导出数据时, dmfldr 也会根据控制⽂件指定的列分隔符、⾏分隔符等⽣成数据⽂件。
控制⽂件中还可以指定其他的⼀些dmfldr 参数值。
达梦数据库实训总结
达梦数据库实训总结达梦数据库是一种高性能、高可用、高安全的数据库管理系统。
在数据库实训中,我对达梦数据库进行了深入学习和实践,并取得了一些成果和收获。
在实训中,我了解到达梦数据库具有很高的性能优势。
它采用了多种优化技术,如智能查询优化器、高效索引机制等,可以大大提升查询和处理数据的效率。
在实践中,我通过编写和执行各种复杂的SQL语句,测试了达梦数据库的性能表现,发现其处理大规模数据和复杂查询的能力非常强大。
达梦数据库还具有高可用性。
它采用了主备复制机制,可以实现数据库的实时备份和快速切换,保证了系统的高可用性和数据的安全性。
在实训中,我学习了数据库的备份和恢复操作,并通过模拟故障和恢复的实验,验证了达梦数据库的高可用性和数据完整性。
达梦数据库还注重数据的安全性。
它提供了多种安全机制,如访问控制、权限管理、数据加密等,可以有效保护敏感数据的安全。
在实践中,我学习了数据库的用户管理和权限控制,了解了如何设置用户角色和权限,并通过实验验证了达梦数据库的安全性能。
达梦数据库还具有较好的扩展性和兼容性。
它支持分布式部署和集群架构,可以方便地扩展数据库的性能和容量。
同时,达梦数据库也具有较好的兼容性,可以与其他数据库进行数据迁移和交互。
在实训中,我学习了数据库的集群部署和配置,了解了如何实现数据库的横向扩展和负载均衡,并通过实验验证了达梦数据库的扩展性和兼容性。
总的来说,在达梦数据库的实训中,我对数据库的基本原理和操作有了更深入的了解,掌握了数据库的设计、管理和优化技巧。
通过实践,我发现达梦数据库具有很高的性能、可用性、安全性和扩展性,适用于各种规模和复杂性的应用场景。
在未来的工作中,我将继续深入研究和应用达梦数据库,为企业的数据管理和应用提供更好的支持和服务。
BenchmarkSQLv5.0测试达梦数据库
BenchmarkSQLv5.0测试达梦数据库1、安装jdk7及以上版本,并配置环境变量(本⽂使⽤版本:1.8.0_181)⽤vim编辑器来编辑/etc/profile⽂件,在⽂件末尾添加⼀下内容(按“i”进⼊编辑):export JAVA_HOME=/home/software/jdk1.8.0_251export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATHexport JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/binexport PATH=$PATH:${JAVA_PATH}通过命令source /etc/profile让profile ⽂件⽴即⽣效2、官⽹下载apache-ant(本⽂使⽤版本:apache-ant-1.9.15-bin.zip)将bin⽬录添加进环境变量PATH中:vim ~/.bashrc最后⼀⾏加⼊export PATH=/xxx/apache-ant-1.9.15/bin:$PATH保存退出,重新加载环境变量source ~/.bashrc3、官⽹下载BenchmarkSQL(本⽂使⽤版本:BenchmarkSQL v5.0)4、修改源码,使其⽀持达梦数据库vim benchmarksql-5.0/src/client/jTPCC.java,添加下图红框内容:5、使⽤ant编译源码进⼊解压后的 benchmarksql-5.0 ⽬录,执⾏ ant 即可。
【报错】/root/sikl/benchmarksql-5.0/build.xml:24: Unable to find a javac compiler;com.sun.tools.javac.Main is not on the classpath.Perhaps JAVA_HOME does not point to the JDK.It is currently set to "/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre"【解决】cp /usr/java/latest/lib/tools.jar /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/lib6、创建达梦的⽂件props.dmcd benchmarksql-5.0/runcp props.ora props.dm //根据oracle⽂件创建dm⽂件db=damengdriver=dm.jdbc.driver.DmDriverconn=jdbc:dm://localhost:5236user=benchmarksqlpassword=123456789warehouses=100 //表⽰要装载100个仓库,1个仓库约100MloadWorkers=4 //表⽰线程数terminals=144//To run specified transactions per terminal- runMins must equal zero runTxnsPerTerminal=0//To run for specified minutes- runTxnsPerTerminal must equal zerorunMins=5//Number of total transactions per minutelimitTxnsPerMin=0//Set to true to run in 4.x compatible mode. Set to false to use the//entire configured database evenly.terminalWarehouseFixed=true//The following five values must add up to 100newOrderWeight=45paymentWeight=43orderStatusWeight=4deliveryWeight=4stockLevelWeight=4// Directory name to create for collecting detailed result data.// Comment this out to suppress.resultDirectory=dameng_result_%tY-%tm-%td_%tH%tM%tSosCollectorScript=./misc/os_collector_linux.pyosCollectorInterval=1//osCollectorSSHAddr=user@dbhostosCollectorDevices=net_enp5s0f1 blk_sda7、修改funcs.sh⽂件,添加dameng数据库按下图两处红框处添加:8、在lib库中添加dameng⽬录,放置driver包9、修改benchmarksql-5.0/run/runDatabaseBuild.sh,去掉AFTER_LOAD中的extraHistID10、初始化数据库./dminit path=/mnt/lun2/tpcc11、启动服务器./dmserver /mnt/lun2/tpcc/DAMENG/dm.ini12、建⽤户建表#删除benchmarksql⽤户drop user benchmarksql cascade;#创建benchmarksql⽤户,密码123456789CREATE USER benchmarksql IDENTIFIED BY 123456789; #授权benchmarksql⽤户DBA管理员权限GRANT DBA TO benchmarksql;create table benchmarksql.bmsql_config (cfg_name varchar(30) cluster primary key,cfg_value varchar(50));create table benchmarksql.bmsql_warehouse (w_id integer not null,w_ytd float,w_tax float,w_name varchar(10),w_street_1 varchar(20),w_street_2 varchar(20),w_city varchar(20),w_state char(2),w_zip char(9),cluster primary key(w_id))STORAGE(FILLFACTOR 1);create table benchmarksql.bmsql_district (d_w_id integer not null,d_id integer not null,d_ytd float,d_tax float,d_next_o_id integer,d_name varchar(10),d_street_1 varchar(20),d_street_2 varchar(20),d_city varchar(20),d_state char(2),d_zip char(9),cluster primary key(d_w_id, d_id))STORAGE(FILLFACTOR 1);create table benchmarksql.bmsql_customer (c_w_id integer not null,c_d_id integer not null,c_id integer not null,c_discount float,c_credit char(2),c_last varchar(16),c_first varchar(16),c_credit_lim float,c_balance float,c_ytd_payment float,c_payment_cnt integer,c_delivery_cnt integer,c_street_1 varchar(20),c_street_2 varchar(20),c_city varchar(20),c_state char(2),c_zip char(9),c_phone char(16),c_since timestamp,c_data varchar(500),cluster primary key(c_w_id, c_d_id, c_id));create table benchmarksql.bmsql_history (hist_id integer,h_c_id integer,h_c_d_id integer,h_c_w_id integer,h_d_id integer,h_w_id integer,h_date timestamp,h_amount float,h_data varchar(24))storage(branch(32,32),without counter);create table benchmarksql.bmsql_oorder (o_w_id integer not null,o_d_id integer not null,o_id integer not null,o_c_id integer,o_carrier_id integer,o_ol_cnt float,o_all_local float,o_entry_d timestamp,cluster primary key(o_w_id, o_d_id, o_id))storage(without counter);create table benchmarksql.bmsql_new_order (no_w_id integer not null,no_d_id integer not null,no_o_id integer not null,cluster primary key(no_w_id, no_d_id, no_o_id))storage(without counter);create table benchmarksql.bmsql_order_line (ol_w_id integer not null,ol_d_id integer not null,ol_o_id integer not null,ol_number integer not null,ol_i_id integer not null,ol_delivery_d timestamp,ol_amount float,ol_supply_w_id integer,ol_quantity float,ol_dist_info char(24),cluster primary key(ol_w_id, ol_d_id, ol_o_id, ol_number) )storage(without counter);create table benchmarksql.bmsql_stock (s_w_id integer not null,s_i_id integer not null,s_quantity float,s_ytd float,s_order_cnt integer,s_remote_cnt integer,s_data varchar(50),s_dist_01 char(24),s_dist_03 char(24),s_dist_04 char(24),s_dist_05 char(24),s_dist_06 char(24),s_dist_07 char(24),s_dist_08 char(24),s_dist_09 char(24),s_dist_10 char(24),cluster primary key(s_w_id, s_i_id));create table benchmarksql.bmsql_item (i_id integer not null,i_name varchar(24),i_price float,i_data varchar(50),i_im_id integer,cluster primary key(i_id));13、装载数据cd benchmarksql-5.0/run./runLoader.sh props.dm可以看到MAIN.DBF⽂件变⼤14、创建索引和序列create index ndx_customer_name on benchmarksql.bmsql_customer (c_w_id, c_d_id, c_last, c_first);create or replace procedure benchmarksql.createsequenceasn int;stmt1 varchar(200);beginselect count(*)+1 into n from benchmarksql.bmsql_history;if(n != 1) thenselect max(hist_id) + 1 into n from benchmarksql.bmsql_history;end if;PRINT n;stmt1:='create sequence benchmarksql.bmsql_hist_id_seq start with '||n||' MAXVALUE 9223372036854775807 CACHE 50000;'; EXECUTE IMMEDIATE stmt1;end;/call benchmarksql.createsequence;alter table benchmarksql.bmsql_history modify hist_id integer default (benchmarksql.bmsql_hist_id_seq.nextval);15、修改dm.ini参数通过disql登录DM8服务器并执⾏如下SQL命令:SP_SET_PARA_VALUE (2,'MAX_OS_MEMORY',100);SP_SET_PARA_VALUE (2,'MEMORY_POOL',300);SP_SET_PARA_VALUE (2,'BUFFER',14000);SP_SET_PARA_VALUE (2,'BUFFER_POOLS',97);SP_SET_PARA_VALUE (2,'FAST_POOL_PAGES',10000);SP_SET_PARA_VALUE (2,'FAST_ROLL_PAGES',8000);SP_SET_PARA_VALUE (2,'RECYCLE',8);SP_SET_PARA_VALUE (2,'MULTI_PAGE_GET_NUM',1);SP_SET_PARA_VALUE (2,'MAX_BUFFER',14000);SP_SET_PARA_VALUE (2,'WORKER_THREADS',16);SP_SET_PARA_VALUE (2,'CKPT_RLOG_SIZE',0);SP_SET_PARA_VALUE (2,'CKPT_DIRTY_PAGES',0);SP_SET_PARA_VALUE (2,'FORCE_FLUSH_PAGES',0);SP_SET_PARA_VALUE (2,'DIRECT_IO',0);SP_SET_PARA_VALUE (2,'IO_THR_GROUPS',16);SP_SET_PARA_VALUE (2,'BDTA_SIZE',16);SP_SET_PARA_VALUE (2,'ENABLE_IN_VALUE_LIST_OPT',1);SP_SET_PARA_VALUE (2,'ENABLE_SPACELIMIT_CHECK',0);SP_SET_PARA_VALUE (2,'RLOG_PARALLEL_ENABLE',1);SP_SET_PARA_VALUE (2,'SESS_CHECK_INTERVAL',30);SP_SET_PARA_VALUE (2,'FAST_RELEASE_SLOCK',0);SP_SET_PARA_VALUE (2,'NOWAIT_WHEN_UNIQUE_CONFLICT',1);SP_SET_PARA_VALUE (2,'UNDO_EXTENT_NUM',32);SP_SET_PARA_DOUBLE_VALUE (2,'UNDO_RETENTION',0.08);SP_SET_PARA_VALUE (2,'MAX_SESSIONS',1000);SP_SET_PARA_VALUE (2,'MAX_CONCURRENT_TRX',0);SP_SET_PARA_VALUE (2,'MAX_SESSION_STATEMENT',20000);SF_SET_SYSTEM_PARA_VALUE('SUBQ_EXP_CVT_FLAG', 0, 0, 1);SF_SET_SYSTEM_PARA_VALUE('PURGE_DEL_OPT', 1, 0, 1);SP_SET_PARA_VALUE (2,'ENABLE_FREQROOTS',0);SP_SET_PARA_VALUE (2,'CACHE_POOL_SIZE',200);SP_SET_PARA_VALUE (2,'DICT_BUF_SIZE',100);SP_SET_PARA_VALUE (2,'CKPT_INTERVAL',3600);SP_SET_PARA_VALUE (2,'BATCH_PARAM_OPT',0);SP_SET_PARA_VALUE (2,'VM_MEM_HEAP',1);SP_SET_PARA_VALUE (2,'COMM_VALIDATE',0);SP_SET_PARA_VALUE (2,'DECIMAL_FIX_STORAGE',1);SP_SET_PARA_VALUE(2, 'PARALLEL_PURGE_FLAG', 1);SP_SET_PARA_VALUE(2, 'ENABLE_HASH_JOIN', 0);16、退出服务器⼿动修改dm.ini参数,以下参数对性能提升有很⼤帮助CKPT_FLUSH_PAGES = 0 #Minimum number of flushed pages for checkpoints,默认1000 ENABLE_MONITOR = 0 #Whether to enable monitor,默认1FAST_RW_LOCK=2 #Fast Read Write Lock flag,默认1FIRST_ROWS=16 #maximum number of rows when first returned to clients,默认100其他内存参数, worker_threads等可以看情况调节17、重启服务器./dmserver /mnt/lun2/tpcc/DAMENG/dm.ini18、扩库以及⽇志⽂件、优化表alter tablespace "ROLL" resize datafile 'ROLL.DBF' to 10000;alter database resize logfile 'DAMENG01.log' to 50000;alter database resize logfile 'DAMENG02.log' to 50000;--测试前执⾏如下SQL:--item表,8K的页,需要占⽤1300页SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'BMSQL_ITEM', 1);SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'BMSQL_WAREHOUSE', 1); SP_SET_TAB_FAST_POOL_FLAG('BENCHMARKSQL', 'BMSQL_DISTRICT', 1);如果是压⼒测试(数据都可以在内存放下),可以执⾏下⾯的语句,把数据预加载到内存:select count(*) from "BENCHMARKSQL"."BMSQL_CUSTOMER" union allselect count(*) from "BENCHMARKSQL"."BMSQL_DISTRICT" union allselect count(*) from "BENCHMARKSQL"."BMSQL_ITEM" union allselect count(*) from "BENCHMARKSQL"."BMSQL_NEW_ORDER" union allselect count(*) from "BENCHMARKSQL"."BMSQL_OORDER" union allselect count(*) from "BENCHMARKSQL"."BMSQL_ORDER_LINE" union allselect count(*) from "BENCHMARKSQL"."BMSQL_STOCK" union allselect count(*) from "BENCHMARKSQL"."BMSQL_WAREHOUSE" union allselect count(*) from "BENCHMARKSQL"."BMSQL_HISTORY" union allselect count("C_PAYMENT_CNT") from "BENCHMARKSQL"."BMSQL_CUSTOMER"; 19、执⾏测试./runBenchmark.sh props.dm执⾏结果如下:jTPCC : Term-00, C value for C_LTerm-00, Running Average tpmTOTAL: 66755.57 jTPCC : Term-00, Measured tpmC (NewOrders) = 30082.27jTPCC : Term-00, Measured tpmTOTAL = 66751.79jTPCC : Term-00, Session Start = 2020-08-20 15:44:30jTPCC : Term-00, Session End = 2020-08-20 15:49:30jTPCC : Term-00, Transaction Count = 333877测试结果说明Measured tpmC (NewOrders) = 30082.27,每分钟新订单数为30082.27Measured tpmTOTAL = 66751.79,每分钟处理的总数为66751.79Transaction Count = 333877,5分钟处理的总数为333877。
达梦数据库查表的结构
达梦数据库查表的结构一、数据库的基本概念数据库是一个存储、管理和组织数据的系统,可以方便地对数据进行存储、检索、更新和删除等操作。
在达梦数据库中,表是数据库中的一个重要组成部分。
二、表的定义和特点表是数据库中最基本的数据组织形式,它由行和列组成,每一行代表一个记录,每一列代表一个字段。
表的定义包括表名、字段名、字段类型和约束条件等。
1. 表名:表名用于唯一标识一个表,表名应具有描述性,便于理解和识别。
2. 字段名:字段名是表中的列名,用于标识不同的字段。
字段名应具有描述性和规范性,避免使用含糊或重复的字段名。
3. 字段类型:字段类型定义了字段的数据类型,包括整数、浮点数、字符型、日期型等。
根据实际需求选择合适的字段类型,以节省存储空间和提高查询效率。
4. 约束条件:约束条件用于限制表中字段的取值范围,包括主键约束、唯一约束、非空约束和外键约束等。
约束条件可以保证数据的完整性和一致性。
三、表的创建和修改在达梦数据库中,可以使用CREATE TABLE语句创建表,语法如下:CREATE TABLE 表名 (字段1 数据类型 [约束条件],字段2 数据类型 [约束条件],...);表的修改可以使用ALTER TABLE语句,可以添加、修改和删除表的字段,语法如下:ALTER TABLE 表名ADD 字段名数据类型 [约束条件],ALTER COLUMN 字段名修改内容,DROP COLUMN 字段名;四、表的查询在达梦数据库中,可以使用SELECT语句查询表中的数据。
SELECT 语句的基本语法如下:SELECT 字段1, 字段2, ...FROM 表名[WHERE 条件][ORDER BY 字段 [ASC|DESC]];其中,字段是要查询的列名,可以使用通配符*代表所有列;表名是要查询的表名;WHERE条件用于筛选满足条件的记录;ORDER BY语句用于对查询结果进行排序。
五、表的更新和删除在达梦数据库中,可以使用UPDATE语句更新表中的数据,使用DELETE语句删除表中的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
市监局数据探查经验文档
一、数据探查模板
表探索模板
二、数据字典
1、直接在可视化工具上查看
右键表名-属性,在常规界面查看表注释,在DDL界面查看字段注释。
2、通过数据库表查询
(一般没有权限,需要协商申请)
1)查看当前模式下的信息
user_tables --表属性
user_tab_columns --字段属性
user_col_comments --字段注释
2)查看所有模式下的信息
all_tables --表属性
all_tab_columns --字段属性
all_col_comments --字段注释
三、数据探查
1、Sql探查
构造临时表,逐一轮换表名和字段,这样只需修改临时表的定义,下面的查询sql不需修改
2、利用finereport进行探查
使用finereport中的sql函数生成对应的sql语句来查询
利用finereport还可以设置定时调度,对一些耗时巨大的操作可以放到后台进行处理
四、踩坑经验
1、达梦数据库的模式
一个用户对应一个模式,查询本模式下的表同常用sql语句:select * from table
查询其他模式下的表,需要对应指定模式名:select * from 模式.table [达梦说明文档]
实际查询中,select * from 模式.table 报错,无效表名或视图名,模式名和表名必须用双引号引起来,如select * from “模式”.”table”
2、定义变量的使用
各条语句后面的分号不能省略
变量使用:=来赋值,可以直接在定义的时候赋值
如果没有初始赋值,则必须在Begin和End里面进行赋值
3、临时表的创建
CREATE GLOBAL TEMPORARY TABLE TMP_EMP(
EMPNO INT PRIMARY KEY,
ENAME VARCHAR(15) NOT NULL,
JOB VARCHAR(10))
ON COMMIT DELETE ROWS;
ON COMMIT DELETE ROWS:指定临时表是事务级的,每次事务提交或回滚之后,表中所有数据都被删除;
ON COMMIT PRESERVE ROWS:指定临时表是会话级的,会话结束时才清空表,并释放临时B 树。
4、达梦数据管理工具
在DM管理工具上进行修改和删除数据,只在当前会话生效。
需点击提交之后,才能全局生效。