数据字典

一、数据字典是什么
数据字典是:(SAP)管理 【数据库对象】 的工具。

二、数据字典为什么存在
没有数据字典,就管理不好数据库对象,管理不好,系统就会出问题
数据字典的重要性
通过数据字典,把数据库对象管理好,后续才能顺利的进行功能开发,SAP系
统才能正常运行。


三、数据字典怎么使用

数据字典使用-01 SQL介绍
SQL可以分为两个部分:
DML (Data Manipulation Language) 数据管理语言
DDL (Data Def inition Language) 数据定义语言
DML部分包括查询和更新命令,如SELECT,INSERT,UP DATE,DELETE等,ABAP程序处理SQL的DML部分。(理解:对数据的增删改查,操作的是数据)
DDL部分由诸如CREATE TABLE,CREATE INDEX,DROP TABLE,ALTER TABLE等命令组成,ABAP字典处理SQL的DDL部分。(理解:可以定义表、结构等,操作的是类型)

ABAP字典可以被视为驻留在SAP数据库中的元数据(即关于数据的数据)以及由数据库维护的元数据。 词典用于创建和管理数据定义,以及创建表,数据元素,域,视图和类型。
数据字典使用-02 定义数据的基本元素
ABAP词典中的基本类型:
• 数据元素通过定义数据类型,长度和可能的小数位数来描述基本类型。
• 结构和可以具有任何类型的组件。
• 表类型描述了内部表的结构。
可以在ABAP程序中引用Dictionar y环境中的各种对象。 词典被称 为全局区域。
词典中的对象对所有ABAP程序都是全局的,ABAP程序中的数据可以通过引用这些Dictionary全局对象来声明。

字典支持用户定义类型的定义,这些类型在ABAP程序中使用。
它们还定义数据库对象的结构,如表,视图和索引。 当对象被激活时,这些对象将在底层数据库的字典定义中自动创建。
词典还提供编辑工具,如搜索帮助和锁定工具,如锁定对象。
字典任务
ABAP字典实现以下:
Enforces data integrity.
Manages data definitions without redundancy.
Integrates tightly with rest of the ABAP development workbench.
例子
任何复杂的用户定义类型都可以从词典中的3种基本类型构建。 客户数据存储在结构“客户"中,组件名称,地址和电话如下图所示。

名称也是一个具有组件,名字和姓氏的结构。 这两个组件都是基本的,因为它们的类型由数据元素定义。
组件的类型地址由组件定义,其组件也是结构;
而电话组件由表类型定义,因为客户可以有多个电话号码。 类型用于ABAP程序,也用于定义功能模块的接口参数类型。
数据字典使用-03 练习
1)创建表(ZT0614_HY101)
2)表有三个组成字段:
MANDT(参考数据元素为MANDT);
ZTF01(参考新建数据元素ZDL_学号_01,主键,CHAR4);
ZTF02(CHAR10)
1.创建表

2.填写相关信息
维护交付类,允许维护视图


然后选择包进行保存,传递请求
3.激活
定义技术设置


没有报红色的错误表明激活成功
创建表成功
4.点击内容进行查看


5.表中添加数据
此时表中没有数据,添加数据有两种方式:
(1)通过程序的方式。利用SQL语句,DML语言写入数据;
(2)通过维护视图的方式。
法一:通过写入SQL语句的方式举例:
SE38创建程序(这里用之前创建好的程序)
**数据字典-SQL语句往表中添加数据
REPORT zhy01_hy101_20220617_01 NO STANDARD PAGE HEADING.
DATA gt_zt0614_hy101 LIKE TABLE OF zt0614_hy101 WITH HEADER LINE."定义表
*写入数据
gt_zt0614_hy101-ztf01 = 'HY101'.
gt_zt0614_hy101-ztf02 = '鼠小倩'.
APPEND gt_zt0614_hy101.
*更新列表的数据库
MODIFY zt0614_hy101 FROM TABLE gt_zt0614_hy101[].
COMMIT WORK.
点击运行程序


创建成功。
法二:通过维护视图的方式举例:
首先se11打开创建的表,选择“更改”模式下,选择导航栏“实用程序”下“表维护生成器”


这里的函数组需要重新创建。
创建函数组:
SE80
步骤一:首先创建程序包




步骤二:创建函数组
选中自己创建的程序包,鼠标右键:【创建】->【函数组】




然后继续创建视图,回到刚才的表格生成器界面

生成屏幕号后点击保存

双击生成的屏幕号,进入更改界面

进入屏幕号修改界面后,点击【布局】

加载成功后,进入屏幕制作器:

点击“+”号,输入学号和姓名,完成后保存

回到屏幕绘制器中进行激活

然后再次激活一下表

这时表的维护制图就完成了。
SM30 进行表视图的维护

选择更改界面,点击【新条目】,可以新增数据

新增成功

网友评论