达梦数据库的交互工具disql

2024-04-07 10:20

本文主要是介绍达梦数据库的交互工具disql,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

达梦数据库的交互工具disql

1 功能简介

DIsql 是 DM 数据库的一个命令行客户端工具,用来与 DM 数据库服务器进行交互。DIsql 是 DM 数据库自带的工具,只要安装了 DM 数据库,就可以在应用菜单和安装目录中找到。
DIsql 识别用户输入,将用户输入的 SQL 语句打包发送给 DM 数据库服务器执行,并接收服务器的执行结果,并按用户的要求将执行结果展示给用户。为了更好地与用户交互和展示执行结果,用户也可以在 DIsql 中执行 DIsql 命令,这些命令由 DIsql 工具自身进行处理,不被发送给数据库服务器。
SQL 语句在 DIsql 中执行完后都被保存在一个特定的内存区域中, 用户可以通过上下键查找到这些保存在内存中的 SQL 语句(些操作系统可能不支持此操作) ,并可以进行修改,然后再次执行。 DIsql 命令执行完后不保存在内存区域中。

2 disql命令的语法

disql的语法可以通过disql -h 查看。 用法与oracle数据库的sqlplus命令类似。

[dmdba@test ~]$ disql -h
disql V8
version: 03134283904-20220630-163817-20005
DISQL 用法1:disql -h|help  显示disql版本信息和帮助信息DISQL 用法2:disql [ [<option>] [<logon> | {/NOLOG}] [<start>] ]<option> 为: [-L] [-S]-L 只尝试登录一次-S 隐藏模式,隐藏<SQL>标识符<logon> 为::= {<username>[/<password>] | /}[@<connect_identifier>][<option>] [<os_auth>]<connect_identifier>[<svc_name> | host[:port] | <unixsocket_file>]HOST如果是IPv6的地址,需要用[]指明是IPv6地址,例如[fe80::1e6f:65ff:fed1:3724%6]INET_TYPE如果是UNIXSOCKET类型,<connect_identifier>需要指明是unixsocket地址,例如:/data/sdb/DAMENG/foo.sock<option> ::= #{<extend_option>=<value>[,<extend_option>=<value>]...}<os_auth> ::= AS {SYSDBA|SYSSSO|SYSAUDITOR|USERS|AUTO}<extend_option>            <value>MPP_TYPE                    GLOBAL/LOCALINET_TYPE                   UDP/TCP/IPC/RDMA/UNIXSOCKETSSL_PATH                    <path_str>SSL_PWD                     <pwd_str>PROXY_CLIENT                <user_str>GWDSN                       <GATEWAY DSN>UKEY_NAME                   <ukey_name_str>UKEY_PIN                    <ukey_pin_str>SHAKE_CRYPTO                <shake_crypto_str>USER_NEW_PWD                <new_pwd><start> ::= <`sql脚本> | <direct cmd> | <direct sql> 运行disql脚本/NOLOG 选项能在未登录DM服务器的情况下启动disql<`sql脚本>::= `<filename>[<parameter> { <parameter>}...]"<direct sql>::= -e "<SQL语句>[;<SQL语句>]"<direct cmd>::= -c "<set 命令>"

3 常用登录数据库的方式

[dmdba@test ~]$ disql sysdba/Dameng123服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 2.797(ms)
disql V8
SQL> exit--当监听的端口不是默认的5236时,需要指定登录端口。
[dmdba@test ~]$ disql sysdba/Dameng123@localhost:5236服务器[localhost:5236]:处于普通打开状态
登录使用时间 : 3.610(ms)
disql V8
SQL> exit

–登录交互界面后,可以通过help检查帮助。

[dmdba@test ~]$ disql sysdba/Dameng123服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 3.185(ms)
disql V8
SQL> help HELP
----显示打印信息,键入HELP或者 ? .
HELP|? [topic]
APPEND        添加文本到当前行的末尾。
COLUMN        描述指定列的信息。
CONNECT       连接到服务器。
CLEAR         重置或清理指定操作的缓存。
DISCONNECT    提交所有修改到服务器,但不退出DISQL。要退出DISQL使用exit命令。
DESCRIBE      获取表或视图、存储过程、函数、包、记录、类的结构描述。
DEFINE        设置变量值,或者显示已定义的变量信息。
HOST          在不退出DISQL的情况下执行操作系统命令。
EDIT          打开一个文本编辑器,里面包含所有SQL记录。
EXIT          提交或者回滚所有修改,退出DISQL。
MORE          切换到下一个结果集。
LIST          显示最近执行的SQL语句或者PL/SQL块信息,或者使用 ";"命令。不显示DISQL命令。
PROMPT        发送指定的消息或者空行到用户的屏幕。
QUIT          提交或者回滚所有修改,退出DISQL。
SET           设置某个系统环境变量,设置的值会修改当前会话的DISQL系统设置,例如:-   设置数据显示宽度-   制定 HTML 格式-   允许/禁止打印列头-   设置每一页的行数
SHOW          显示某个DISQL的系统变量,或者当前DISQL的环境变量。
SPOOL         屏幕显示的内容输出到指定文件。
WHENEVER      当一个SQL命令,或者PL/SQL块生成一个错误的时候,执行特定的命令(默认是DISQL退出)SQL> 

或者 help + 具体命令,如:help col

SQL> help colCOLUMN------描述指定列的信息。COL[UMN] [<column | expr> [option] ]where option represents one of the following clauses:NEW_V[ALUE] variableFOR[MAT] formatformat ::= A is the prefix followed by an integerSQL> 

达梦的disql与oracle的sqlplus 操作很相似,有过使用sqlplus经验的同学上手会更快。

注:达梦安装完数据库后,会在两条路径下有disql的命令。
分别在$DM_HOME/bin和$DM_HOME/tool路径下。 我们平时登录数据库使用的是$DM_HOME/bin下的disql

[dmdba@test dm8]$ find /dm8/ -name "disql"
/dm8/bin/disql
/dm8/tool/disql

更多的内容请看达梦的官方文档。《DM8_DIsql使用手册》

谨记:心存敬畏,行有所止。

这篇关于达梦数据库的交互工具disql的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/882342

相关文章

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp

Go语言连接MySQL数据库执行基本的增删改查

《Go语言连接MySQL数据库执行基本的增删改查》在后端开发中,MySQL是最常用的关系型数据库之一,本文主要为大家详细介绍了如何使用Go连接MySQL数据库并执行基本的增删改查吧... 目录Go语言连接mysql数据库准备工作安装 MySQL 驱动代码实现运行结果注意事项Go语言执行基本的增删改查准备工作

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

MySQL 数据库表与查询操作实战案例

《MySQL数据库表与查询操作实战案例》本文将通过实际案例,详细介绍MySQL中数据库表的设计、数据插入以及常用的查询操作,帮助初学者快速上手,感兴趣的朋友跟随小编一起看看吧... 目录mysql 数据库表操作与查询实战案例项目一:产品相关数据库设计与创建一、数据库及表结构设计二、数据库与表的创建项目二:员

MySQL慢查询工具的使用小结

《MySQL慢查询工具的使用小结》使用MySQL的慢查询工具可以帮助开发者识别和优化性能不佳的SQL查询,本文就来介绍一下MySQL的慢查询工具,具有一定的参考价值,感兴趣的可以了解一下... 目录一、启用慢查询日志1.1 编辑mysql配置文件1.2 重启MySQL服务二、配置动态参数(可选)三、分析慢查

MybatisPlus中removeById删除数据库未变解决方案

《MybatisPlus中removeById删除数据库未变解决方案》MyBatisPlus中,removeById需实体类标注@TableId注解以识别数据库主键,若字段名不一致,应通过value属... 目录MyBATisPlus中removeBypythonId删除数据库未变removeById(Se