当前位置:   article > 正文

DM8示例库的手动创建_dm8 创建库表

dm8 创建库表

实验环境:kylinserverV10,dm8

DM8自带了示例库方便用户学习。如果安装时没有勾选示例库,也可以在安装后手工创建。

这里以DMHR示例库为例。已经安装的数据库实例端口是5236,数据库安装目录是/dm8,字符集是UTF-8。

首先需要找到需要导入的示例库的数据导入脚本。

[dmdba@localhost UTF-8]$ pwd
/dm8/samples/instance_script/dmhr/UTF-8
[dmdba@localhost UTF-8]$ ls
CITY.sql  CREATESCHEMA.sql  DEPARTMENT.sql  EMPLOYEE.sql  JOB_HISTORY.sql  JOB.sql  LOCATION.sql  REGION.sql

这里我们可以用disql执行这些脚本来导入数据。

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

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

我们执行脚本试试:

[dmdba@localhost UTF-8]$ ls
CITY.sql  CREATESCHEMA.sql  DEPARTMENT.sql  EMPLOYEE.sql  JOB_HISTORY.sql  JOB.sql  LOCATION.sql  REGION.sql
[dmdba@localhost UTF-8]$ disql
disql V8
用户名:SYSDBA

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 2.678(ms)
SQL> start CREATESCHEMA.sql;

invalid file path [CREATESCHEMA.sql;]

SQL>  start CREATESCHEMA.sql
SQL> --创建表空间
CREATE TABLESPACE DMHR DATAFILE 'DMHR.DBF' size 128;
操作已执行
已用时间: 181.774(毫秒). 执行号:49700.
SQL> /
--创建表空间
CREATE TABLESPACE DMHR DATAFILE 'DMHR.DBF' size 128;
第2 行附近出现错误[-3401]:表空间[DMHR]已存在.
已用时间: 0.319(毫秒). 执行号:0.
SQL> --创建模式
CREATE SCHEMA DMHR;
操作已执行
已用时间: 8.107(毫秒). 执行号:49701.
SQL>

这个原因是在于该脚本中有“/”,默认情况下disql使用“/”会再次执行sql脚本中的命令,由参数CMD_EXEC控制,默认开启。

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

默认disql下执行脚本会显示脚本内容,执行时间,执行结果等,导致整个窗口被sql命令覆盖,我们关闭此提示。总结一下就是需要关闭以下参数:

SQL> set CMD_EXEC off
SQL> set echo off
SQL> set timing off
SQL> set feedback off

之后再执行脚本可以成功:

SQL> start CREATESCHEMA.sql
--创建表空间
CREATE TABLESPACE DMHR DATAFILE 'DMHR.DBF' size 128;
第2 行附近出现错误[-3401]:表空间[DMHR]已存在.
SQL> start REGION.sql
SQL> start CITY.sql
SQL> start LOCATION.sql
SQL> start DEPARTMENT.sql
SQL> start JOB.sql
SQL> start EMPLOYEE.sql
SQL> start JOB_HISTORY.sql

可以在manager里查看数据正常与否:

执行help set可以查看disql支持的参数,各参数说明具体可参考《DM8_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语句行号显示

更多参考内容请访问达梦云适配中心

https://eco.dameng.com/

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/671457
推荐阅读
相关标签
  

闽ICP备14008679号