版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
达梦数据库模式管理
武汉职业技术学院
信创学院目录基本概念创建模式删除模式一、模式的基本概念用户的模式(SCHEMA)指用户账号拥有的对象集,概念上可以看做包含表、视图和权限定义的对象。系统中为每一个用户自动创建了一个同名的模式,并将其作为默认模式。用户还可以创建其他模式;一个用户可以创建多个模式,一个模式中的对象(表、视图等)可以被当前用户访问,也可以授权给其他用户访问二、创建模式
[例-1]为用户SYSDBA创建模式GREATECRAFTSMAN二、创建模式1.在DM管理工具中的左侧列表中找到“模式”,右键菜单中选择“新建模式”二、创建模式2.在弹出窗口中填写如下信息,完成创建并授权二、创建模式注意事项:1.不能与其他模式同名2.创建用户必须具有DBA或者CREATESCHEMA权限3.其他用户访问该用户的基表和视图时需冠以模式名。创建用户可以省略4.模式定义语句不能与其他SQL语句一起执行5.在DISQL中使用CREATESCHEMA语句时必须用“/”结束三、删除模式【例-2】删除的模式“GREATECRAFTSMAN”三、删除模式1.在DM管理工具中找到要删除的模式“GREATECRAFTSMAN”右键菜单,选择“删除”三、删除模式2.弹出窗口中选择待删除的对象,并点击“确定”删除课程小节本次课程需要掌握三个方面的内容:模式的概念、创建和删除。
谢谢~项目6DMSQL应用
武汉职业技术学院
信创学院1.DMSQL简介2.DDL操作3.DML操作4.事务概述目录学习目标项目场景公司根据“工资管理系统”需求,设计“工资管理系统”数据库,该数据库需要支持查询员工信息、公司的部门安排、公司的工资等级,以及员工工资信息的数据增加、更新、查询和删除等功能,主要包含员工信息表、部门信息表、工资等级表、工资表的创建,索引的创建和数据的录入、查询操作等。本项目依托达梦数据库搭建“工资管理系统”的数据库,包括相关数据表的创建和查询等。项目目标完成“工资管理系统”数据库表的创建。完成“工资管理系统”数据的录入和修改。能够根据需求设计“工资管理系统”的数据查询语句。学习目标技能目标了解达梦数据库所支持的结构化查询语言。了解事务的基本概念。
了解达梦数据库中的数据操纵语言。了解死锁的概念和避免死锁的方法。掌握达梦数据库中的数据模式管理、表管理、数据管理、视图管理。掌握事务的提交与撤销。掌握达梦数据库中的数据定义语言。素养目标数据库表的设计和创建和数据的录入需要遵守一定的语法规则,保护用户隐私。培养学生守法意识。对需要存储的数据进行加密,谨防数据泄露,注重学生安全意识的培养。任务6.1DMSQL简介
结构化查询语言(SQL语言)是一种可以从数据库软件中简单、有效地读取数据的编程语言,是由美国IBM公司的两名员工RaymondF.Boyce和DonaldD.Chamberlin于1974年提出的。1976年,结构化查询语言在IBM公司的关系数据库管理系统SystemR上实现,并改名为SEQUEL2,该语言专门用来完成与数据库的通信。1986年10月,美国国家标准化组织(ANSI)公布ANSIX3.135-1986数据库语言SQL,简称SQL-86,是SQL语言的第一个国际化行业标准。目前已经过多次改版,先后发布了SQL-99、SQL:2003、SQL:2008,最新的标准为2011年公布的ISO/IEC9075:2011,又称SQL:2011。6.1DMSQL简介SQL语言包含了所有对数据库管理系统的操作,由以下5个部分组成:1.数据定义语言数据定义语言(DDL语言)定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引等。2.数据操作语言数据操作语言(DML语言)包括数据的插入、删除和更新等操作。3.数据查询语言数据查询语言(DQL语言)包括数据的查询操作。4.数据控制语言数据控制语言(DCL语言)包括数据访问控制权限的授权与回收操作。5.事务控制语言事务控制语言(TCL语言)包括事务的提交与回滚操作。6.1DMSQL简介DMSQL语言是对标准SQL语言的扩充,包含DDL语言、DML语言、DQL语言、DCL语言和TCL语言等。DMSQL语言是一种统一的、综合的关系数据库语言,功能强大,使用起来简单方便,容易被用户掌握。DMSQL语言具有如下特点:1.功能一体化2.语法结构统一3.高度非过程化4.面向集合的操作方式5.语言简洁,方便易学6.1DMSQL简介任务6.2DDL语言操作任务描述用户需要完成“工资管理系统”表结构的设计和数据表的创建,通过对“工资管理系统”表结构的创建,熟练掌握达梦数据库的数据库管理、模式管理、表管理、索引管理、视图管理等。任务目标了解DMSQL语言中的DDL语言。了解达梦数据库模式的概念,并掌握达梦数据库模式的创建、使用、删除等操作。了解DMSQL语言所支持的数据类型,掌握基本数据类型的使用。了解达梦数据库的表中约束的基本概念,并掌握达梦数据库为表添加、修改、删除等约束的方法。掌握达梦数据库中表的创建、查看、修改和删除等基本操作。掌握达梦数据库的修改操作。完成“工资管理系统”项目的数据库和表的创建。6.2DDL语言操作知识要点DMSQL语言的数据定义语言(DDL语言)是SQL语言数据定义语言的扩展,包含以下7个功能。数据库修改语句。用户创建、修改、删除语句。模式创建、使用、删除语句。表空间创建、修改、删除、恢复语句。表创建、修改、删除语句。索引创建、修改、删除语句。视图创建、修改、删除语句。本任务主要讲解数据库的修改,模式的创建、修改与删除,表和索引的创建、修改、删除语句,视图的创建、查询和删除语句等内容。6.2DDL语言操作6.2.1数据库的修改达梦数据库的创建是通过创建达梦数据库实例来实现的,在项目3中介绍了创建“工资管理系统”的数据库实例,数据库名为SALDB,实例名为SALINST,端口号为5236。数据库创建成功后,可以通过DDL语言完成对数据库的修改。目前,DDL语言支持以下修改。(1)增加或者重命名日志文件。(2)修改日志文件大小。(3)修改数据库的状态和模式。(4)进行归档配置。6.2.1数据库的修改DMSQL语言对于修改数据库的语法格式如下:6.2.1数据库的修改参数说明:(1)ADDLOGFILE用于增加日志文件。(2)RENAMELOGFILE用于对日志文件重命名。(3)MOUNT|SUSPEND|OPEN为设置数据库的状态。(4)ARCHIVELOG用来设置数据库归档模式为归档。(5)归档目标是指归档日志所在的位置,若本地归档,则为本地归档目录;若远程归档,则为远程服务实例名;删除操作只需指定归档目标。(6)归档类型是指归档操作类型,包括REALTIME、ASYNC、LOCAL、REMOTE、TIMELY,分别表示远程实时归档、远程异步归档、本地归档、远程归档、主备即时归档。
谢谢~达梦数据库模式管理
武汉职业技术学院
信创学院目录基本概念创建模式删除模式一、模式的基本概念用户的模式(SCHEMA)指用户账号拥有的对象集,概念上可以看做包含表、视图和权限定义的对象。系统中为每一个用户自动创建了一个同名的模式,并将其作为默认模式。用户还可以创建其他模式;一个用户可以创建多个模式,一个模式中的对象(表、视图等)可以被当前用户访问,也可以授权给其他用户访问二、创建模式
[例-1]为用户SYSDBA创建模式GREATECRAFTSMAN二、创建模式1.在DM管理工具中的左侧列表中找到“模式”,右键菜单中选择“新建模式”二、创建模式2.在弹出窗口中填写如下信息,完成创建并授权二、创建模式注意事项:1.不能与其他模式同名2.创建用户必须具有DBA或者CREATESCHEMA权限3.其他用户访问该用户的基表和视图时需冠以模式名。创建用户可以省略4.模式定义语句不能与其他SQL语句一起执行5.在DISQL中使用CREATESCHEMA语句时必须用“/”结束三、删除模式【例-2】删除的模式“GREATECRAFTSMAN”三、删除模式1.在DM管理工具中找到要删除的模式“GREATECRAFTSMAN”右键菜单,选择“删除”三、删除模式2.弹出窗口中选择待删除的对象,并点击“确定”删除课程小节本次课程需要掌握三个方面的内容:模式的概念、创建和删除。
谢谢~达梦数据库表管理
武汉职业技术学院
信创学院目录基本概念创建表修改表删除表一、表的基本概念表:表是数据库中数据存储的基本单元,用户通过对表的访问实现对数据的读写。每一张表都属于一个模式。表是由行和列组成,每一行代表一个单独的记录;表中的列表示该表所跟踪的实体的属性,每个列都有一个名称及特性。列有两个部分组成:数据类型和长度一、表的基本概念
达梦数据库支持的数据类型:数值型:INTEGER等,表示整数、小数;字符类型:CHAR,VARCHAR等,表示整段文字等;多媒体类型:TEXT、LONG、CLOB等,表示音频、视频等;日期类型:DATE、DATETIME,表示时间、日期等。二、创建表【例-1】使用SYSDBA用户,创建模式GCM,在GCM中创建表AWARD(ID获奖人标识,TITLE获奖称号,NAME获奖人姓名,GENDER性别,AGE获奖年龄,AYEAR获奖年份)。获奖人标识,ID,可用INT,标识唯一获奖人,“主键”获奖称号,TITLE,长度不固定的文字,使用VARCHAR,长度255获奖人姓名,NAME,长度不固定的文字,使用VARCHAR,长度100性别,GENDER,定长字符串CHAR,长度为2获奖年龄,AGE,可用INT获奖年份,AYEAR,可用INT二、创建表1.找到模式GCM,展开。找到其下“表”,点击“右键”菜单,选择“新建表”二、创建表1.在弹出菜单中填写相应列内容,点击“确定”完成表的创建三、修改表【例-2】在大国工匠信息表AWARD中增加一列获奖人描述信息DESCRIPTION。三、修改表1.选择表STUDENTINFO,再次打开“右键”菜单,选择“修改(M)...”三、修改表3.添加新的列信息,点击“确定”完成新增列。四、删除表【例-3】删除表AWARD。四、删除表1.选择要删除的表AWARD,在其上点击“右键”,选择“删除”四、删除表2.在弹出的窗口中选择要删除的表名字,点击“确定”完成删除。四、删除表注意事项:1.如果表中存在数据,会提示删除失败。需要先清除掉所有的数据,才能删除表。课程小节刚刚学习了表的创建、修改和删除操作。在数据库中关于表的操作是最基础的内容,需要好好掌握。
谢谢~达梦数据库索引管理武汉职业技术学院
信创学院1.索引创建2.索引删除一.索引创建索引是一种对数据库表中一列或多列的值进行排序的一种存储结构,索引类似于图书的目录,可以根据目录中的页码快速找到所需的内容。索引的目的是为能更快地定位数据页。DM8索引能提供访问表数据的更快路径,可以不用重写任何查询而使用索引,其查询结果与不使用索引是一样的,但速度更快。一.索引创建-索引类型聚集索引:每一个普通表有且只有一个聚集索引;唯一索引:索引数据根据索引键唯一。函数索引:包含函数/表达式的预先计算的值;位图索引:对低基数的列创建位图索引;位图连接索引:针对两个或多个表连接的位图索引,主要在数据仓库中使用;全文索引:在表的文本列上而建的索引。一、索引创建的语法结构CREATE[ORREPLACE][CLUSTER|NOTPARTIAL][UNIQUE|BITMAP|SPATIAL]INDEX<索引名>ON[<模式名>.]<表名>(<索引列定义>{,<索引列定义>})[GLOBAL][<STORAGE子句>][NOSORT][ONLINE];一、索引创建例1:在AWARD表中,以AWARD_NAME为索引列建立索引IND_NAME。CREATE
INDEX"GreatCraftsman".IND_NAMEONAWARD(NAME);二、索引的删除
1.语法结构DROPINDEX[IFEXISTS][<模式名>.]<索引名>二、索引的删除
例2:删除索引IND_NAMEDROP
INDEX
IF
EXISTS"GreatCraftsman".IND_NAME;
谢谢~达梦数据库视图管理
武汉职业技术学院
信创学院在数据库中有这么一种虚拟表,其结构和数据来自于一个或多个基本表,可以被当作普通表一样进行查询操作,但实际上不存储任何数据。这种虚拟表就叫作视图。合理利用视图能够带来很多好处。如视图能简化用户操作,使用户可以将注意力集中在所关心的数据上;视图能够对机密数据提供安全保护;适当的利用视图可以更清晰地表达查询等等。1.视图创建2.视图使用3.视图删除一.视图创建1.视图是从一个或多个基表(或视图)导出的虚拟的表,其内容由查询定义。视图具有普通表的结构,但不存放对应的数据,这些数据仍存放在原来的基表中。当对一个视图进行查询时,视图将查询其对应的基表,并且将所查询的结果以视图所规定的格式和次序进行返回。因此当基表中的数据发生变化时,从视图中查询出的数据也随之改变。2.视图的作用:是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制,它简化了用户数据模型,提供了逻辑数据独立性,实现了数据共享和数据的安全保密。一.视图创建说明:1.视图属于模式,因此在创建时需要指定模式名,缺省为当前模式CREATE[ORREPLACE]VIEW
[<模式名>.]<视图名>[(<列名>{,<列名>})]AS查询语句一、视图创建[例1]:在GCM模式下创建视图V_AWARD,包含大国工匠的姓名、年龄和获奖年份。三、视图删除语法结构如下:DROPVIEW
[IFEXISTS]
[<模式名>.]<视图名>;
课程小结了解了视图的概念,以及视图存在的意义,并基于“大国工匠信息”表演示了如何创建视图,使用和删除视图,相信通过今天的学习,同学们对视图有了一定的了解,课后可以多做练习,创建形式更加丰富的视图。
谢谢~武汉职业技术学院
信创学院项目6DMSQL应用
6.2任务实践
任务目标工资管理系统的主要作用是实现工资的集中管理,可供财务人员对本单位员工的工资进行管理,因此工资系统中需要存放以下数据。(1)部门信息:部门编号、部门名称、部门地址等信息,可以方便按部门管理员工。(2)员工信息:员工编号、员工姓名、岗位名称、经理编号、入职日期、备注、部门编号等信息。(3)工资等级:等级编号、最低工资、最高工资等信息,入职员工根据员工等级确认该员工的工资范围。(4)工资:序号、员工编号、基本工资、奖金、扣除工资、合计、备注(工资变动时的说明)等信息。根据以上需求,规划“工资管理系统”的数据库的表结构,表结构信息见表6-3、表6-4、表6-5和表6-6。完成上述DEPT表、EM表、SALGRADE表、SALARY表的创建。“工资管理系统”存储在“SALM”模式中,该模式属于用户SALM(用户的详细内容见项目7)。因此,在开始创建表之前需要创建一个名为“SALM”的用户,创建用户时会自动创建同名的模式。创建用户的语句如下:【例6-1】
以用户SYSDBA登录达梦数据库SALDB为实例。在“SALM”模式下创建存储公司的部门信息表DEPT。DEPT表中需要存放数据的字段信息见表6-3。1.DM管理工具创建表步骤1:启动DM管理工具,该工具在终端中运行达梦数据库安装目录下的tool文件夹下的manager脚本,启动命令如图6-2所示。启动成功后,DM管理工具的运行界面如图6-3所示。步骤2:双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,在弹出的窗口中填写用户名和口令,与数据库SALDB建立连接,其中LOCALHOST代表本台计算机,如图6-4所示。步骤3:登录成功后,双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项并展开,然后找到“SALM”模式并展开,在“SALM”模式下的“表”上右击,在弹出的快捷菜单中选择“新建表”选项,如图6-5所示。步骤4:单击“新建表”后,弹出“新建表”窗口。进入“常规”参数设置界面,将表名设置为“DEPT”,注释设置为“部门信息表”,如图6-6所示。单击“列”选区右侧的“+”按钮,添加一个字段,列名为“DEPTNO”,勾选对应字段左侧的“主键”复选框;双击数据类型下默认的“CHAR”类型,按照表6-3的要求在下拉菜单中选择“INT”数据类型,精度使用默认。再次单击“+”按钮添加字段“DNAME”,选择数据类型为“VARCHAR”,并双击默认精度“50”,进入编辑状态,将其修改为表6-3中要求的精度“14”。再次单击“+”按钮添加字段“LOCATION”,选择数据类型为“VARCHAR”,并将其修改为表6-3中要求的精度“130”。步骤5:字段设置完成后,单击如图6-6所示窗口中的“确定”按钮,完成部门信息表DEPT的创建。创建完成后可以双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项下面的“SALM”模式并展开,展开下面的“表”,即可查看创建成功的DEPT表,如图6-7所示。在“SALM”模式下创建部门信息表DEPT,语句如下:将以上语句编写到DM管理工具的“查询”窗格中,单击工具栏中的三角形绿色按钮并运行,同样可以完成DEPT表的创建,如图6-8所示。选中该语句,单击工具栏中的执行按钮(三角形绿色按钮),执行数据表的创建。在“消息”窗格上显示执行成功的提示,如图6-9所示。2.DISQL工具创建表在达梦数据库安装目录bin文件夹下,打开终端,执行如下语句:其中,“SYSDBA”为用户名,“Dameng123”为用户密码,“localhost”为本机域名,“5236”为数据库实例的端口号。使用DISQL工具登录数据库如图6-10所示。在“>”符号后输入创建表的DDL语句,并按回车键执行,如图6-11所示。步骤1:启动DM管理工具,并以用户SYSDBA的身份登录。登录成功后,双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”,找到“模式”选项下的“SALM”模式,展开下面的“表”,在下一级目录下找到“DEPT”表。选中并右击“DEPT”表,弹出如图6-12所示的快捷菜单。【例6-2】在修改模式“SALM”下的DEPT表中,增加“DEPTMANAGERID”字段,数据类型设为“INT”,长度设为“10”。步骤2:在如图6-12所示的快捷菜单中,单击“修改”选项,弹出如图6-13所示的“修改表”窗口。步骤3:在如图6-13所示的“修改表”窗口中,单击“+”按钮,添加相应字段。其中,列名为“DEPTMANAGERID”,数据类型为“INT”,精度为“10”,如图6-14所示。步骤4:修改完成后,单击“确定”按钮,即可完成数据表的修改操作。【例6-3】在“SALM”模式下的DEPT表中,删除“DEPTMANAGERID”字段。1.通过DM管理工具修改表步骤1:删除字段的操作与添加字段的类型都需要打开如图6-14所示的对话框。在该对话框中,选中“DEPTMANAGERID”字段,单击“-”按钮,删除对应字段,修改结果如图6-13所示。【例6-2】和【例6-3】中关于添加字段和删除字段操作的DDL语句如下:使用DM管理工具修改表的DDL语句,其执行结果如图6-15所示。2.通过DISQL命令行工具修改表在DISQL命令行工具中修改表的DDL语句与DM管理工具中修改表的DDL语句相同,因此打开DISQL命令行工具并输入如图6-15所示的DDL语句后执行,其执行结果如图6-16所示。【例6-4】以用户SYSDBA登录达梦数据库SALDB为例。在“SALM”模式下创建存储公司的员工表EMP。EMP表中需要存放数据的字段信息见表6-4。步骤1:在DM管理工具中创建EMP表,在“新建表”窗口中需要设置表结构的信息如图6-17所示。步骤2:在如图6-17所示的左侧窗格中,展开“选择项”下拉菜单,单击“约束”选项,如图6-18所示。步骤3:单击如图6-18所示窗口中“约束列表”选区下的“添加”按钮,在弹出的“新建约束”对话框中选中“外键约束”单选按钮,如图6-19所示。步骤4:在如图6-19所示的对话框中单击“确定”按钮,弹出“配置外键约束”窗口,指定“DEPTNO”列引用DEPT表的主键列“DEPTNO”,外键名称为“FK_DEPT”,填写信息如图6-20所示。步骤5:在如图6-20所示的窗口中单击“确定”按钮,完成外键配置。此时“新建表”窗口如图6-21所示。步骤6:在如图6-21所示的窗口中单击“确定”按钮,完成EMP表的创建。【例6-5】以用户SYSDBA登录达梦数据库SALDB为例。在“SALM”模式下创建存储公司的工资等级表SALGRADE。SALGRADE表中需要存放数据的字段信息见表6-5。在DM管理工具中创建SALGRADE工资等级表,其“新建表”窗口中需要设置表结构的信息如图6-22所示。【例6-6】以用户SYSDBA登录达梦数据库SALDB为实例。在“SALM”模式下创建存储公司的工资表SALARY。SALARY表中需要存放数据的字段信息见表6-6。步骤1:使用DM管理工具创建SALARY工资表,打开“新建表”窗口,填写表结构的信息,如图6-23所示。需要在列DERIALNUM中设置列的自增,将“列属性”选项卡中的“自增列”设为“是”,“种子”设为“1”,“增量值”设为“1”,表示初始值为1,且每次递增1。步骤2:添加外键约束,指定“EMPNO”列引用EMP表的主键列“EMPNO”,外键名称为“FK_EMP”,“配置外键约束”窗口如图6-24所示。步骤3:在如图6-24所示的“配置外键约束”窗格中单击“确定”按钮,完成外键配置。在如图6-23所示的“新建表”窗口中单击“确定”按钮,完成SALARY表的创建。【例6-7】当员工信息表EMP中记录数量较多,如超过十万条时,可以适当添加索引,这样可随着“工资管理系统”所涉及的未来员工数量的增长,仍然具有较快的查询速度,能够提升系统的可扩展性。在EMP表的员工姓名“ENAME”字段中创建索引,索引名称为“IN_ENAME”。1.通过DM管理工具创建索引步骤1:双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项并展开,然后找到“SALM”模式并展开,在“表”下找到EMP表,将其展开,在其下的“索引”菜单上右击,在弹出的快捷菜单中单击“新建索引”选项,在弹出的“新建索引”对话框中创建索引,如图6-25所示。步骤2:在如图6-25所示的窗口中单击“确定”按钮,完成索引的创建。2.通过DISQL命令行工具创建索引为EMP表添加索引的DDL语句如下:通过DISQL命令行工具为EMP表创建索引,执行效果如图6-26所示。【例6-8】以上数据表如果创建出错,达梦数据库支持使用DM管理工具和DISQL命令行工具将数据表删除。以用户SYSDBA登录,删除“SALM”模式下的数据表DEPT。步骤1:启动DM管理工具,并通过用户SYSDBA登录。登录成功之后,双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项下的“SALM”模式,展开下面的“表”,在下一级目录下找到“DEPT”表。选中并右击“DEPT”表,弹出如图6-27所示的快捷菜单。步骤2:在如图6-27所示的快捷菜单中单击“删除”选项,弹出如图6-28所示的“删除对象”窗口。步骤3:在如图6-28所示的窗口中单击“确定”按钮,即可完成数据表DEPT的删除操作。用户也可以编写DDL语句删除数据表,DDL语句如下:【例6-9】创建视图,视图名称为“EMP_DEPT_VIEW”,视图包含员工编号EMPNO、员工姓名ENAME、员工部门编号DEPTNO、部门名称DNAME,用于展示员工和部门之间的对应关系。步骤1:启动DM管理工具,并以用户SYSDBA的身份登录。登录成功后,双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项下的“SALM”模式下的“视图”选项,右击该“视图”选项,弹出如图6-29所示的快捷菜单。步骤2:在如图6-29所示的快捷菜单中,单击“新建视图”选项,弹出“新建视图”窗口,填写视图名称,如图6-30所示。步骤3:在如图6-30所示的窗口中单击“查询设计器”按钮,弹出“查询设计”对话框,如图6-31所示。步骤4:在如图6-31所示的对话框中单击“目标对象”中的“+”按钮,弹出“对象选择”对话框,在“表”选项卡中选择“SALM”模式下的DEPT表和EMP表,如图6-32所示。然后单击“确定”按钮,完成基表对象的选择。步骤5:此时被选择的基表出现在“查询设计”对话框中,如图6-33所示。步骤6:设置视图包含的列信息。在如图6-33所示的对话框中单击“导出列”后的“+”按钮,弹出“列选择”对话框,勾选SALM.DEPT表中DEPTNO列和DNAME列对应的复选框,勾选SALM.EMP表中EMPNO列、ENAME列和DEPTNO列对应的复选框,如图6-34所示。单击“确定”按钮,完成导出列的设计。步骤7:此时“查询设计”对话框中的显示结果如图6-35所示。步骤8:下一步设计导出条件列,条件为SALM.DEPT表中的DEPTNO列与SALM.EMP表中的DEPTNO列相同。在如图6-35所示的对话框中单击“条件列”后的“+”按钮,在弹出的“列选择”对话框中,勾选“SALM.DEPT”下的DEPTNO列所对应的复选框,如图6-36所示。步骤9:在如图6-36所示的对话框中单击“确定”按钮,完成列选择。此时“查询设计”对话框中的显示结果如图6-37所示。步骤10:双击如图6-37所示对话框中“条件列”的DEPTNO行中的第5列的<VALUE>,可以编辑其内容。由于条件为“SALM.DEPT.DEPTNO=SALM.EMP.DEPTNO”,所以需要将第5列的<VALUE>设置为“SALM.EMP.DEPTNO”。此时“查询设计”对话框中的显示结果如图6-38所示。步骤11:单击如图6-38所示对话框中的“确定”按钮,完成查询的设计。其中在图6-38界面中底部的“SQL语句(S):”下,显示视图的查询DMSQL语句。步骤12:“新建视图”窗口如图6-39所示。步骤13:单击“确定”按钮,完成EMP_DEPT_VIEW视图的创建。此时视图可以像数据表一样进行数据的查询操作。
谢谢~达梦数据库查询武汉职业技术学院
信创学院数据查询数据查询是数据库的核心操作,DM_SQL语言提供了功能丰富的查询方式,满足实际应用需求。几乎所有的数据库操作均涉及到查询,因此熟练掌握查询语句的使用是数据库从业人员必须掌握的技能。1.选出哪些数据?2.这些数据从哪里来?3.这些数据要满足什么条件?SELECT数据列1,数据列2,...FROM模式名.数据表名WHERE
查询条件1.单表查询【例1】2022年获得“大国工匠”称号的获奖人编号,姓名,职位,年龄信息SELECT
ID,ANAME,TITLE,AAGEFROMGCC.AWARDWHEREAYEAR=2022;1.单表查询【例2】统计2022年获得“大国工匠”称号的获奖人一共多少位?SELECTCOUNT(AID)FROMGCC.AWARDWHERE
AYEAR=2022;课程小节在“大国工匠”信息表上使用SELECT语句,结合WHERE关键字实现了简单的条件查询功能,还学会了使用COUNT函数进行简单的统计查询。简单查询是最基础的查询,同学们需要好好掌握。
谢谢~达梦数据库连接查询武汉职业技术学院
信创学院连接查询如果需要查询的数据不在一张表中,应该如何获取想要的数据呢?关系数据库中,数据之间的关系通过把一个实体的标识符作为领一张表的列来表示。检索数据时,合理设置连接条件,通过连接操作查询出存在多张表中的不同实体的信息。1.交叉连接2.内连接3.外连接1.交叉连接交叉连接又称为“笛卡尔乘积”,即两个集合相乘。SELECT*FROM
学生表T1CROSSJOIN课程表
T2;×→学号姓名001张三002李四学生表学号课程名成绩001语文90002数学88课程表学号姓名学号课程名成绩001张三001语文90001张三002数学88002李四001语文90002李四002数学88学生表CROSSJOIN课程表2.内连接内连接为返回的结果集仅包含满足全部连接条件的多表连接方式。语法结构如下:连接条件格式为:SELECT列名字
FROM
模式名.表名1INNERJOIN
模式名.表名2ON
连接条件
;模式名.表名1.列名=
模式名.表名2.列名
;2.内连接CREATETABLEAWARD(IDINTprimarykey,--编号,获奖人的标识TITLEVARCHAR(255),--获奖称号NAMEVARCHAR(255),--获奖人姓名GENDERVARCHAR(4),--性别AGEINT,--获奖年龄AYEARINT,--获奖年份DESCRIPTIONVARCHAR(255)--获奖人描述);CREATETABLEPERSONALEXPERIENCE(IDINTprimarykey,--自增编号PIDINT,--外键,为AWART获奖人编号IDHIREDATEDATETIME,--入职/入学日期TERMINATIONDATEDATETIME,--离职日期JOBTYPEIDCHAR(7),--职位编号,外键为职业大典表的编号COMPANYVARCHAR(255)--获奖人公司名称);2.内连接【例1】查询大国工匠姓名,获奖年龄,获奖人公司,职位编号,入职日期信息3.外连接外连接除了返回满足连接条件的数据以外,还返回左、右或者两表中不满足条件的数据,分为左连接(LEFTJOIN)、右连接(RIGHTJOIN)和全连接(FULLOUTERJOIN)三种。语法结构如下:SELECT列名字
FROM
模式名.表名1
[LEFT|RIGHT|FULLOUTER]JOIN
模式名.表名2ON
连接条件
;课程小节今天学习了三种连接查询,交叉连接、内连接和外连接。连接查询相较于简单查询,难度有所增加,需要大家多加练习。
谢谢~达梦数据库子查询武汉职业技术学院
信创学院子查询一个查询需要依赖于另一个查询的结果,这种查询称为子查询。子查询指一个查询语句嵌套在另一个查询语句部,可以使用子查询的语句包括:FROM、WHERE、HAVING。子查询FROM子句是指在FROM子句中加入SELECT语句作为数据源,语法结构如下:SELECT列名称
FROM(SELECT-FROM-WHERE语句)。子查询WHERE、HAVING子句是指在WHERE和HAVING子句中加入SELECT语句作为查询条件,语法结构如下:SELECT列名称
FROM表名称
WHERE[HAVING]列名称
运算符(SELECT-FROM-WHERE语句)。注意:1.子查询的求解方法为由内向外,先执行子查询,再执行外部父查询。2.子查询的SELECT语句中不能使用ORDERBY子句。子查询【例1】以大国工匠AWARD表和PERSONEXPERIENCE为例,通过子查询,获得大国工匠中年龄低于60岁的工匠姓名的个人经历信息。子查询【例2】查询性别为男的大国工匠中,获奖年龄比编号为2015002和2015003都大的大国工匠信息。课程小节子查询部分理解难度增加,希望大家能够在掌握基本语法的前提下多加练习,好好掌握。
谢谢~达梦数据库录入武汉职业技术学院
信创学院1.使用图形界面录入2.使用DMSQL语句录入数据录入【例-1】向AWARD表中插入如下数据:IDTITLENAMEGENDERAGEAYEARDESCRIPTION2015001隧道爆破高级技师彭祥华男462015刚毅负责胆魄与技能开路先锋
1.打开达梦管理工具DMManager,选中表AWARD,点击右键选择“浏览数据”一、使用图形界面录入二.使用DMSQL语句录入1.录入数据的DMSQL语句,语法结构如下:插入一条记录:INSERTINTO[模式名.]<表名>[(<列名>{,<列名>})]VALUES(<插入值>{,<插入值>});插入多条记录:INSERTINTO[模式名.]<表名>[(<列名>{,<列名>})]VALUES(<插入值>{,<插入值>}),{(<插入值>{,<插入值>})};二.使用DMSQL语句录入IDTITLENAMEGENDERAGEAYEARDESCRIPTION2015002火箭发动机燃料药面整形高级技师徐立平男472015火药雕刻师战略导弹、载人航天2015003特高压线上的带电检修工王进男372015这是金属与金属的碰触,粹然的星火照亮一张坚毅、专注的脸庞一线工人勇攀世界带电作业巅峰2016001焊接坦克装甲钢板的焊工卢仁峰男532016独手焊侠为国筑剑2016002焊接LNG(液化天然气)船的围护系统的焊工张冬伟男362016殷瓦焊工用焊枪书写荣耀2016003核电站主管道焊工未晓朋男292016核电项目的“金焊枪”每分每秒坚守岗位,一干就是十几个小时二.使用DMSQL语句录入INSERTINTOGCM.AWARD
VALUES('2015003','特高压线上的带电检修工','王进','男',37,2015,'这是金属与金属的碰触,粹然的星火照亮一张坚毅、专注的脸庞一线工人勇攀世界带电作业巅峰'),('2016001','焊接坦克装甲钢板的焊工','卢仁峰','男',53,2016,'独手焊侠为国筑剑'),('2016002','焊接LNG(液化天然气)船的围护系统的焊工','张冬伟','男',36,2016,'殷瓦焊工用焊枪书写荣耀'),('2016003','核电站主管道焊工','未晓朋','男',29,2016,'核电项目的“金焊枪”每分每秒坚守岗位,一干就是十几个小时。');二.使用DMSQL语句录入注意:录入的数据个数与列个数不一致时,需要指定列名字。INSERTINTOGCM.AWARD
(ID,TITLE,NAME,GENDER,AGE,AYEAR)VALUES('2017001','传统POEM手术改良医生','周平红','男',49,2017);IDTITLENAMEGENDERAGEAYEARDESCRIPTION2017001传统POEM手术改良医生周平红男492017课程小结重点讲解DMSQL语句录入数据,使用INSERT关键字,结合VALUES关键字实现了数据的单个录入和批量录入功能。数据录入是数据库管理员、开发人员使用最为频繁的数据库操作,需要好好掌握。
谢谢~达梦数据库更新武汉职业技术学院
信创学院1.使用图形界面更新2.使用DMSQL语句更新数据更新【例-1】更新学生表STUDENTINFO中学号为2130200001的学生,因为后期班级调整,分配到“安全21301班”。一、使用图形界面更新
1.打开达梦管理工具DMManager,选中表STUDENTINFO,点击右键选择“浏览数据”一、使用图形界面更新2.选中学号2130200001的学生的班级所在单元格,双击修改。一、使用图形界面更新3.点击工具栏中的“保存”图标或者使用快捷键“CTRL+S”保存并提交数据。二.使用DMSQL语句更新UPDATE<模式名.表名>SET<列名>=<值表达式>|<DEFAULT>{,<列名>=<值表达式>|DEFAULT>}[WHERE<条件表达式>];二.使用DMSQL语句更新更新需求:1.将“隧道爆破高级工程师”重新修改回“隧道爆破高级技师”课程小结今天我们在“大国工匠信息”表上使用两种方式完成了数据的更新,学习难点是DMSQL更新数据语句。
谢谢~达梦数据库删除武汉职业技术学院
信创学院1.使用图形界面删除2.使用DMSQL语句删除数据删除【例-1】删除学生表STUDENTINFO中学号为'2130200001'的数据记录一、使用图形界面删除
1.打开达梦管理工具DMManager,选中表STUDENTINFO,点击右键选择“浏览数据”一、使用图形界面删除2.找到学号为'2130200001'的记录,点击“右键”在弹出的菜单中选择“”一、使用图形界面删除3.点击工具栏中的“保存”图标或者使用快捷键“CTRL+S”保存并提交数据。二.使用DMSQL语句删除1.删除数据的DMSQL语句,语法结构如下:DELETEFROM<表名>[WHERE<条件表达式>]二.使用DMSQL语句删除DELETEFROMJWSYSTEM.STUDENTINFOWHERESNO='2130200002';二.使用DMSQL语句删除使用DELETE语句录入完成之后需要输入commit;语句并执行提交事务(或者点击任务栏中对号按钮),完成数据的录入。课程小节在“大国工匠信息”表上使用两种方式实现了数据的删除。难点:DMSQL语句删除数据
谢谢~项目6DMSQL应用武汉职业技术学院
信创学院6.3任务实践
任务目标完成“工资管理系统”中员工信息录入、员工信息变更、工资查询、工资数据、部门数据的统计等功能。【例6-10】在达梦数据库实例SALDB中,通过DM管理工具录入数据,DEPT表待录入的数据见表6-17。步骤1:使用DM管理工具,在DM管理工具的manager脚本中执行如下命令语句,录入数据并提交。执行结果如图6-40所示。步骤2:检查数据录入是否正确。双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项下的“SALM”模式并展开,展开下面的“表”,在下一级目录下找到DEPT表,选中并右击DEPT表,在弹出的快捷菜单中单击“浏览数据”选项,打开DEPT表后查看数据。“浏览数据”选项如图6-41所示。DEPT表已录入的数据如图6-42所示。【例6-11】在达梦数据库“SALM”模式下的EMP表中录入数据,EMP表待录入的数据见表6-18。步骤1:使用DM管理工具中的“浏览数据”功能录入数据。双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项并展开,找到“SALM”模式并展开,然后找到“SALM”模式下的EMP表,在其上单击鼠标右键,在弹出的快捷菜单中单击“浏览数据”选项,打开EMP表后查看数据,如图6-43所示。步骤2:图6-43中的EMP表,每行都代表一条记录,双击单元格即可编辑。录入表6-18中的数据,如图6-44所示。步骤3:图6-44中的EMP表,每行数据的行号后显示“+”,代表此行是新增的数据,等待提交操作。用户可以单击工具栏中的“保存”按钮保存,也可以按“Ctrl+S”组合键保存。保存之后,数据录入生效,即可完成数据录入操作,如图6-45所示。【例6-12】在达梦数据库“SALM”模式下的SALGRADE表中录入数据,SALGRADE表待录入的数据见表6-19。步骤1:使用DM管理工具,在DM管理工具的manager脚本中执行如下命令语句,录入数据并提交。步骤2:使用DM管理工具,执行查询“SALM”模式下的SALGRADE表的全部数据的DDL语句,语句如下:查询结果如图6-46所示。【例6-13】在达梦数据库“SALM”模式下的SALARY表中录入数据,SALARY表待录入的数据见表6-20。步骤1:使用DDL录入第一条数据,即SERIALNUM列中值为1的数据记录。由于SALARY表中的SERIALNUM为自增列,因此使用INSERT录入数据时不能指定该字段的值,故录入数据的DDL语句如下:步骤2:使用DM管理工具录入剩下的4条记录。双击DM管理工具左侧“对象导航”窗格下的“LOCALHOST(SYSDBA)”选项,找到“模式”选项下的“SALM”模式并展开,然后找到“SALM”模式下的“SYSARY”表,在其上右击,在弹出的快捷菜单中单击“浏览数据”选项,使用“浏览数据”功能录入数据,如图6-47所示。因为第一列SERIALNUM为自增列,所以无法编辑数据,只需要输入后面6列数据即可。步骤3:仔细检查核对数据录入,按“Ctrl+S”组合键保存数据,完成数据输入,保存后数据录入生效,效果如图6-48所示。【例6-14】因为部门编号为104的市场部场地租金到期,需要变更工作场地,由“关山一路”搬迁至“国采中心”,所以用户需要在“工资管理系统”的数据库中变更部门信息表DEPT。更新语句如下:使用DM管理工具,执行上述语句,完成数据的更新操作。完成后通过查询语句,查询部门编号为104的部门位置信息,查询语句如下:查询结果如图6-49所示。【例6-15】由于财务部门录入工资信息时多次提交,导致SALARY表中员工编号为2001的李慧军同志在7月有两条工资记录,如图6-50所示,因此需要将SERIALNUM记录值为6的数据记录删除。1.使用浏览数据功能删除数据步骤1:在SALARY表上单击鼠标右键,在弹出的快捷菜单中单击“浏览数据”选项,打开SALARY表,选中SERIALNUM数值为6的记录,单击鼠标右键,弹出快捷菜单,如图6-51所示。步骤2:单击“删除”按钮,删除数据记录,如图6-52所示。步骤3:按“Ctrl+S”组合键保存删除操作,完成数据的删除,如图6-53所示。2.使用DDL语句删除数据该需求使用DDL语句删除数据的语句如下:使用DM管理工具执行上述DDL语句,完成数据删除操作。注意,如果被删除的数据记录被其他数据表引用(如外键等),财务人员需要先删除引用该数据的数据表中包含该记录字段的数据记录,之后才能删除该条记录。例如,员工编号为2002的员工申请离职,办理完离职手续后需要更新EMP表中的数据,将编号为2002的员工删除。根据“工资管理系统”的数据表设计,工资表SALARY通过外键引用EMP表中的员工编号,编号为2002的员工在SALARY表中存在工资记录信息,故财务需要先删除SALAY表中EMPNO为2002的员工的工资信息并保存,删除成功后才能删除EMP表中编号为2002的员工。【例6-16】每月10号为公司发工资的日期,在每月的1号,财务人员需要做工资预算,统计待发工资的总额,以便从公司的流动资金中预留出足额的资金给员工发工资。每月1号,财务需要统计所有员工的工资。请编写统计查询语句,帮助财务计算出当月需要发放的工资总额。上述需求需要计算SALAY表中的TOTAL列,TOTAL列为实发薪酬,因此只需要计算SALARY表中的TOTAL列的总和,查询语句如下:将以上语句在DM管理工具中执行,计算公司待发工资总额的查询结果如图6-54所示。【例6-17】每年年末,公司的人事管理部门需要对公司人员做统计,查看每个部门员工的人员情况,以便做次年的招聘计划。请生成人事管理部门需要的人员报表,要求显示所有的部门编号、部门名称、员工编号、员工名称、岗位名称。分析以上人员报表,发现部门编号和部门名称记录在数据表DEPT中,员工编号、员工名称、岗位名称记录在数据表EMP中,在EMP表中存在外键FK_DEPT引用DEPT表中的部门编号DEPTNO。报表中需要显示全部的部门,即使该部门没有任何员工,因此需要使用外连接才能实现。下面使用左外连接生成人员报表,查询语句如下:将以上查询语句在DM管理工具中执行,部门人员报表的查询结果如图6-55所示。【例6-18】在【例6-16】的基础上,人事部门需要了解每个部门的人员总数,需要显示部门编号、部门名称、部门人员总数。请协助人事部门完成以上数据的统计。根据需求,统计每个部门的人员总数,需要用到GROUPBY分组关键字,查询语句如下:将以上查询语句在DM管理工具中执行,部门人员总数统计的查询结果如图6-56所示。【例6-19】从目前的DEPT表来看,系统中存在两个部门均为“总经理办”,部门编号分别为101和201,现在人事部门需要查看“总经理办”的员工信息,请协助他们查询出符合条件的数据。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 富士康管理培训课件
- 家长课堂燃气安全课件
- 2026年兼职员工劳动合同执行协议
- 2026年服务器远程监控合同
- 2026年高效蔬菜大棚种植合同协议
- 2026年电商直播营销策划合同
- 2026年员工保密责任合同
- 2026年铝材定制保密合同
- 家长会安全教育课件
- 2026年2026年硬装设计委托合同
- 2025至2030PA12T型行业发展趋势分析与未来投资战略咨询研究报告
- T/CSPSTC 17-2018企业安全生产双重预防机制建设规范
- 遥感图像处理技术在城市更新中的应用
- 智慧产业园仓储项目可行性研究报告-商业计划书
- 四川省森林资源规划设计调查技术细则
- 广东省建筑装饰装修工程质量评价标准
- 楼板回顶施工方案
- DB13T 5885-2024地表基质调查规范(1∶50 000)
- 2025年度演出合同知识产权保护范本
- 区块链智能合约开发实战教程
- 2025年校长考试题库及答案
评论
0/150
提交评论