####第一步:创建数据库
进入到数据库程序目录,我这里是/opt/tmp/desktop/client
,如下图所示,主要用到的是Manager,DBCA,disql这三个程序,双击666运行,首先运行DBCA这个程序
出现如下所示界面,我们可以看到这货中文名叫达梦数据库配置助手[Dameng DataBase Configure Assistant?],通过这个图形化的界面来创建一个数据库,按照默认“创建数据库实例”,点击“开始”。
警告,多图预警!有图才更放心!
指定数据库模板,我们不干啥大事,默认“一般用途”,点击“下一步”
数据库目录,以后放数据的地方,这里默认,点击“下一步”
数据库标识,第一次创建时,默认的库名,实例名,端口号如下图所示,继续点击“下一步”
由于开始第一次时我己经按照这个默认配置创建了一个数据库实例,所以得换个名字,如下图所示:
数据库文件按默认的来,点击“下一步”
初始化参数依旧默认,点击“下一步”
口令管理,为了方便,我选择第二个“所有用户使用同意口令”,然后输入口令,点击“下一步”
创建实例库,这里我没勾选,等下自己加模式和表,直接点击“下一步”
创建摘要,点击“完成”就是
这个就有点坑了,我看不到执行脚本的内容啊…没管它
点击“完成”,然后“确定”,好了,一个数据库的创建就完成了
####第二步:使用DM Service Viwer查看数据库服务
DM Service Viwer位于DBCA的上一级目录,有点像Windows下的“服务”程序,在这里可以看到所有的数据库服务,前面4个是达梦自建的用于管理监视整个数据库管理系统,不用理会,其中DMServiceDMSERVER是我刚开始就建立的数据库,DMServiceTMPSERVER是刚刚建立的数据库,我们还可以看到,一开始TMPSERVER是“正在运行“状态,通过右键点击选择关闭数据库服务。
####第三步:使用Manager操作数据库
双击Manager程序,打开程序界面如下图所示,点击弹出"登陆"界面
这里端口号和口令就根据刚才创建数据库时填的信息来补充,我的就是端口号5237,而你们开始默认的是5236,然后点击确定,没有问题的话我们就连上自己刚才创建的数据库啦!
步骤1:添加模式和表
首先创建个文件,内容如下所示,创建模式SPJPro和4个表S,P,J,SPJ
create schema SPJPro authorization SYSDBA;
create table SPJPro.S
(
SNO CHAR(5) PRIMARY KEY,
SNAME CHAR(10),
STATUS TINYINT,
CITY CHAR(10)
);
create table SPJPro.P
(
PNO CHAR(5) PRIMARY KEY,
PNAME CHAR(10),
COLOR CHAR(4),
WEIGHT TINYINT
);
create table SPJPro.J
(
JNO CHAR(5) PRIMARY KEY,
JNAME CHAR(10),
CITY CHAR(10)
);
create table SPJPro.SPJ
(
SNO CHAR(5),
PNO CHAR(5),
JNO CHAR(5),
QTY SMALLINT,
FOREIGN KEY (SNO) REFERENCES SPJPro.S(SNO),
FOREIGN KEY (PNO) REFERENCES SPJPro.P(PNO),
FOREIGN KEY (JNO) REFERENCES SPJPro.J(JNO)
);
在Manager界面左上角点击“文件”->“打开”->选择“”,把文件加载到Manager中,然后点击绿色三角箭头进行运行,结果如下图所示:
步骤2:添加数据
再创建文件,向表中插入数据如下所示
insert into SPJPro.S(SNO,SNAME,STATUS,CITY) values('S1','精益',20,'天津');
insert into SPJPro.S(SNO,SNAME,STATUS,CITY) values('S2','盛锡',10,'北京');
insert into SPJPro.S(SNO,SNAME,STATUS,CITY) values('S3','东方红',30,'北京');
insert into SPJPro.S(SNO,SNAME,STATUS,CITY) values('S4','丰泰盛',20,'天津');
insert into SPJPro.S(SNO,SNAME,STATUS,CITY) values('S5','为民',30,'上海');
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P1','螺母','红',12);
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P2','螺栓','绿',17);
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P3','螺丝刀','蓝',14);
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P4','螺丝刀','红',14);
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P5','凸轮','蓝',40);
insert into SPJPro.P(PNO,PNAME,COLOR,WEIGHT) values('P6','齿轮','红',30);
insert into SPJPro.J(JNO,JNAME,CITY) values('J1','三建','北京');
insert into SPJPro.J(JNO,JNAME,CITY) values('J2','一汽','长春');
insert into SPJPro.J(JNO,JNAME,CITY) values('J3','弹簧厂','天津');
insert into SPJPro.J(JNO,JNAME,CITY) values('J4','造船厂','天津');
insert into SPJPro.J(JNO,JNAME,CITY) values('J5','机车厂','唐山');
insert into SPJPro.J(JNO,JNAME,CITY) values('J6','无线电厂','常州');
insert into SPJPro.J(JNO,JNAME,CITY) values('J7','半导体厂','南京');
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S1','P1','J1',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S1','P1','J3',100);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S1','P1','J4',700);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S1','P2','J2',100);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P3','J1',400);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P3','J2',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P3','J4',500);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P3','J5',400);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P5','J1',400);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S2','P5','J2',100);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S3','P1','J1',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S3','P3','J1',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S4','P5','J1',100);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S4','P6','J3',300);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S4','P6','J4',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S5','P2','J4',100);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S5','P3','J1',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S5','P6','J2',200);
insert into SPJPro.SPJ(SNO,PNO,JNO,QTY) values('S5','P6','J4',500);
同样地,我们再加载文件并运行,结果如下所示
步骤3:查询数据
新建查询文件,添加语句select * from
,结果如下图所示。奇怪的是,明明数据都插入到数据库中了,为什么查询结果为空?
原因:在Manager程序中的数据操作并没有实时地更新到数据库
解决办法:进行事务提交,如下图所示
再运行查询语句,结果就出来了
####第四步:使用disql操作数据库
disql和Manager的功能差不多,只不过一个是图形界面,一个事字符界面,在程序目录manual中有关于disql的详细用法,可以自行查看。
首先是数据库连接,使用login
命令
服务器名直接按回车,表示默认为“localhost”
用户名为“SYSDBA”
密码,端口号为之前创建数据库时设置的
其他都是回车表示默认
然后可以在这个端口中执行sql语句了,更多详细的用法见数据库程序目录下manual/special/DM7_Disql使用手册.pdf
的pdf文件