手工创建DM示例库及disql环境变量初始值设置

2023-10-11 05:32

本文主要是介绍手工创建DM示例库及disql环境变量初始值设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 一、手工创建DM示例库 

这里以DMHR示例库为例,如果在初始化示例时未选择创建DMHR示例库,可以在实例化完成后手工创建该示例库。执行DM安装目录samples/instance_script/dmhr下的对应字符集脚本。如下图所示。

disql下可以使用start或者`执行脚本,执行脚本时需注意顺序,由于各表中有引用约束,顺序不对会报错表不存在,导致引用约束创建失败。创建脚本需按照如下顺序:

CREATESCHEMA.sqlREGION.sqlCITY.sqlLOCATION.sqlDEPARTMENT.sqlJOB.sqlEMPLOYEE.sqlJOB_HISTORY.sql

如果直接在disql下执行`CREATESCHEMA.sql或者start CREATESCHEMA.sql,页面提示执行的脚本内容,并报错表空间[DMHR]已存在。

查看CREATESCHEMA.sql脚本内容,可以看到该脚本中有“/”,默认情况下disql使用“/”会再次执行sql脚本中的命令,由参数CMD_EXEC控制,默认开启。

SQL> host cat CREATESCHEMA.sql

设置SET CMD_EXEC off关闭使用斜杠“/”执行脚本的功能,即可规避此错误;也可以手工编辑此文件去掉第一个斜杠“/”。当然,此报错无影响,报错原因是已经执行过创建DMHR表空间的命令。

默认disql下执行脚本会显示脚本内容,执行时间,执行结果等,导致整个窗口被sql命令覆盖,我们关闭此提示:​​​​​​​

SQL> set echo offSQL> set timing offSQL> set feedback off

此时再依次按照脚本顺序执行脚本,即可完成DMHR示例库的创建。​​​​​​​

SQL> `CREATESCHEMA.sql`REGION.sql`CITY.sql`LOCATION.sql`DEPARTMENT.sql`JOB.sql`EMPLOYEE.sql`JOB_HISTORY.sql

完整的手工创建DMHR示例库命令执行截图如下:

执行完成后,执行如下语句可以看到DMHR示例库已创建。

SQL> select table_name from dba_tables where owner='DMHR';

 二、disql环境变量 

前面已经讲解了部分disql环境变量参数设置,这里做个详细介绍。

1、查看参数信息:

执行help set可以查看disql支持的参数,各参数说明具体可参考《DM8_DIsql使用手册》。

SQL> help set

如果要查看某个参数的当前值,可以使用show 命令查看相关参数值。

SQL> show 参数名

2、设置常用参数:

使用set命令可以设置参数值(注意:该设置仅对当前会话生效)。

SQL> set 变量名 变量值

这里介绍几个常用的功能。

①开启打印显示

当disql下执行或调试DM SQL命令块或者存储过程时,经常会用到DBMS_OUTPUT系统包或者PRINT语句打印相关信息,而默认打印输出是关闭的,此时可以执行如下命令开启。

SQL> set serveroutput on

②关闭环境DMSQL变量替换前、后的控制命令文本

disql下执行一段DMSQL或者存储过程,当有输入参数时,默认会展示输入前的代码和输入后的代码,界面显示过于冗余。如下图:

此时可以设置VERIFY和SQL_LINESHOW(是否显示SQL语句的行号)为 OFF:​​​​​​​

SQL> SET VERIFY OFF SQL> SET SQL_LINESHOW OFF

设置后执行DMSQL代码界面就很清爽。如下图。

③关闭start执行脚本的显示

disql下使用start执行sql脚本默认显示脚本内容,数据量大时严重影响脚本的执行效率。

设置关闭执行语句,执行时间、影响行数等参数。关闭后执行效率将大幅度提高。​​​​​​​

SQL> set echo off     --关闭显示正在执行的脚本SQL> set timing off  --不显示SQL语句花费的执行时间SQL> set feedback off --不显示当前SQL语句的总行数

其他disql的参数设置可参考往期干货分享。

 三、设置disql环境变量初始值 

由于set语句仅对当前会话生效,对于经常使用的参数,每次新建会话都要修改参数值太麻烦,此时可以通过配置文件glogin.sql来实现。

配置文件glogin.sql位于DM安装目录bin/disql_conf下,disql启动并成功连接数据库服务器后,会自动执行$DM_HOME/bin/disql_conf/glogin.sql配置文件,执行时并不会在Disql窗口打印信息,如果没有找到该配置文件则忽略。

比如disql下默认关闭SERVEROUTPUT打印信息,每次新建会话连接需要手工打开,此时可以修改glogin.sql,增加如下设置: ​​​​​​​

SET SERVEROUTPUT ON   --开启打印输出SET VERIFY OFF         --关闭参数验证SET SQL_LINESHOW OFF  --关闭SQL语句行号显示

设置后重新登录数据库,执行DMSQL脚本,可以看到该设置已生效。

实际环境变量设置可根据现网实际情况修改,各参数设置说明可参考disql使用手册。

这篇关于手工创建DM示例库及disql环境变量初始值设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

Java高效实现PowerPoint转PDF的示例详解

《Java高效实现PowerPoint转PDF的示例详解》在日常开发或办公场景中,经常需要将PowerPoint演示文稿(PPT/PPTX)转换为PDF,本文将介绍从基础转换到高级设置的多种用法,大家... 目录为什么要将 PowerPoint 转换为 PDF安装 Spire.Presentation fo

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

python中的高阶函数示例详解

《python中的高阶函数示例详解》在Python中,高阶函数是指接受函数作为参数或返回函数作为结果的函数,下面:本文主要介绍python中高阶函数的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录1.定义2.map函数3.filter函数4.reduce函数5.sorted函数6.自定义高阶函数

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

Vue实现路由守卫的示例代码

《Vue实现路由守卫的示例代码》Vue路由守卫是控制页面导航的钩子函数,主要用于鉴权、数据预加载等场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、概念二、类型三、实战一、概念路由守卫(Navigation Guards)本质上就是 在路