一、基本概念

1.域(Domain)

域是用来描述一个字段的技术属性的集合,包括数据类型,数据长度,小数点位数以及取值范围等。具有以上技术属性的相同定义的字段可以包含进一个域,那么当域的属性定义发生改变时,一旦域被激活,所有引用它的字段属性都会对应进行更改。

2.数据元素(Data Element)

数据元素是一个数据的类型,包含了这个元素的语义属性,包含了一些非结构化的数据对象(如表的字段、结构的字段和变量等)的技术属性(域)、屏幕信息(比如字段长、中、短、头标签等),是能够被引用的数据类型的最小单元,比如表或结构的字段可以参考数据元素,这样可以保证这类特性的数据一致性。同是在ABAP中,数据元素也可以直接用关键字type进行引用,从数据定义的角度来看,数据元素于ABAP最基本的数据类型(C、I、F等)是同一层面

3.字段(Field)

字段是表的列信息,它是物质对象的某一类特征的描述,包含了数据类型信息(数据元素)、字段名、字段描述信息等。ABAP中的字段名只能是以字母开始,不能以数字或者汉字开始。ABAP中的字段也可以是一个附属结构的名字,附属结构下所有的字段本身可以作为表格的字段。

4.表(Table)

表是物质对象一系列的集合体,既包含特征类(字段)、关键特征(主键),也包含这些特征具体的数据(数据记录)。表是数据库的基础,承载实际数据的最小单元。是对现实物质对象的数据抽象,即数字化。

二、域、数据元素、字段、表的关系

域——>数据元素——>字段——表

1)前面三个都是后面一个的继承前面一个所有的属性,而字段则是表的构成部分。域和数据元素的最大作用是增加了数据类型的重用性,并且域的取值范围还能取到数据一致性检查的作用,在维护数据记录的时候,能够起到提示作用。

2)前面三个虽然是继承关系,但是并非必要条件。字段可以引用数据元素,也可以不引用,直接使用定义数据字典的基本类型(如CHAR,NUMC,CURR等和ABAP的基本数据类型还不一样,也不能在ABAP代码中直接进行TYPE式引用);数据元素的定义也可以引用域,也可以不引用域,直接定义数据字典的基本类型。

3)SAP中所有的数据字典对象,只有被激活过才能够被其他对象进行引用。此原则也适用SAP其他开发对象。

三、小试牛刀

说了这么多,还是来点实的吧,下面创建一个简单的员工表。表具有的属性有:ID、编号、姓名、性别、身高、体重、薪水等

1)创建域(ZXM)

在ABAP主界面,运行事务码se11,进入数据字典维护界面,选择域,输入要创建的域名,点击创建进入到下一界面。域名的命名规范,必须是字母Y或者Z开头,一般自定义的默认用Z开头


激活后点击保存

2)创数据类型(Z_ENAME)

和前面步骤差不多,此处省略。直接上图

点击创建后跳出弹出框,选择勾

进入下一界面(引用上一步创建的域)

Field label下,维护数据元素的短、中、长、头部标签,这里的标签信息要符合Length的定义,建议至少维护以下短和头部标签信息。点击激活按钮,进行保存和激活。

点击【本地对象】保存为本地对象

3)创建不引用域的数据元素(Z_EGENDER)

和前面一样运行se11,选择数据元素进行创建

点击创建后跳出弹出框,选择勾

在DATA TYPE 下选择预定义类型 不选域

在FieldLabel下设置标签信息

点击【本地对象】保存为本地对象

4)创建表(ZEMPLOYEE)

老规矩和前面一样运行se11,选择数据库表进行创建

基础信息维护

维护表字段(参照数据元素)

维护表字段(不参照数据元素)

维护好所有的字段(参考之前的步骤)

维护技术设置(请点击上图中的【技术设置】)

维护数据类型为QUAN或者CURR字段的参照

*SAP中数据类型为QUAN的表示数量,为CURR的表示为金额;如果这两个不和度量单位进行关联的话,字段本身的准确性就有问题。比如身高180,如果单位为CM的话就是180;为M的话就是1.8。因为必须要设置,否则的就无法激活。这里选择系统表AUSP相应的字段ATAWE进行参照,参照的字段必须是数据元素为单位的字段。(填好后记得保存)

维护主键并激活保存

你会发现有下面的警告,不要担心。这是提示表格的增强类信息没有维护,所以才发生了警告,只要维护了表格的增强类别,此警告就会消失

维护增强类别

选择Extras下的Enhancement Category..

这里大概是说表格没有选择增强类别

我们选择可以被维护

再此去激活保存,会发现没警告了

5)创建一条记录(有很多种方式)

运行se16

插入数据

查看数据(se16或se16n,sm30可进行增删改查操作)

点击运行后查看

结果

文章转自:http://blog.csdn.net/Kang_xiong/article/details/53842539?locationNum=1&fps=1

ABAP创建数据库表相关推荐

  1. jPA自动创建数据库表的一些配置

    2019独角兽企业重金招聘Python工程师标准>>> jPA自动创建数据库表的一些配置 hibernate.cfg.xml 中hibernate.hbm2ddl.auto配置节点如 ...

  2. python代码创建数据库_如何使用python ORM创建数据库表?

    首先同大家说了语言的全方面知识,基本上各个位置点都有涉及,不知道大家有没有学到知识点呢?小编还是习惯跟大家说个总结,这样大家才能抓住重点,今天继续来学习下关于Django框架中ORM的使用,主要的作用 ...

  3. centos中用MySQL创建新表_CentOS下使用Shell批量创建数据库表

    本文继续探索关于Shell和MySQL的结合使用,我不知道当一个数据库设计完成之后如何快速的创建设计好的数据库表和添加相应基本数据,我目前知道的就是使用Shell和SQL脚本来达到我的目的--快速的. ...

  4. 使用PowerDesigner创建数据库表

    使用PowerDesigner 建数据库表. 一直很忙,没有时间写东西.这次搞点会声会色的,嘿嘿 此技能为项目经理必备技能. 本次主角: 1.在workspace下建立一项目: physical da ...

  5. 使用程序创建数据库表

    使用程序来创建数据库表.

  6. MySQL(一)——安装、创建数据库表、DML语言

    文章目录 1. 简述 2. 安装教程 3. 操作数据库 3.1 操作数据库的基本命令 3.2 数据库的列类型 3.3 数据库的字段属性(重点) 3.4 创建数据库表(重点) 3.5 数据表的类型 3. ...

  7. Spring Data Jpa 实体类自动创建数据库表失败解决

    先说一下我遇到的这个问题,首先我是通过maven创建了一个spring boot的工程,引入了Spring data jpa,结果实体类创建好之后,运行工程却没有在数据库中自动创建数据表. 找了半天发 ...

  8. Python3.x的mysqlclient的安装、Python操作mysql,python连接MySQL数据库,python创建数据库表,带有事务的操作,CRUD

    1.数据库操作 1.1准备工作: 1.安装一个mysql数据库软件 2.创建一个数据库,test 3.在python的环境安装一个模块: MySQLdb 1.2 安装mysql的连接包 第一种:工具安 ...

  9. 数据库设计:pd工程创建数据库表

    数据库建模 了解了数据的设计思想,那对于数据库表的表设计应该怎么做呢?答案是数据库建模数 数据库建模:在设计数据库时,对现实世界进行分析.抽象.并从中找出内在联系,进而确定数据库的结构.它主要包括两部 ...

最新文章

  1. SpringBoot使用笔记
  2. Navicat使用教程:使用Navicat Query Analyzer优化查询性能(第1部分)
  3. 管理你的代码——Git学习(一)
  4. 关于Docker你应该知道的10件事
  5. ps、grep和kill联合使用杀掉进程(转)
  6. (21)Spring Boot过滤器、监听器【从零开始学Spring Boot】
  7. 于明:移动支付将代替电子支付?
  8. Leetcode309. Best time to sell stock with cooldown
  9. C#版 微信无痕僵尸粉检测工具源码
  10. [Ubuntu] 二、安卓模拟器
  11. 【推荐系统】逻辑回归(LR)在推荐系统中的使用
  12. ASP.Net Core Web Api在Windows服务器上部署
  13. C++ 批量图片拼接
  14. FTP 21端口和20端口有什么区别?
  15. (48)性能测试——聚合报告
  16. HTML5期末大作业:美食网页主题网站设计与实现——HTML+CSS+JavaScript月饼美食食品企业网站html模板9页面
  17. 用MATLAB的函数scatter()绘制散点图
  18. java毕设项目公立医院绩效考核系统(附源码)
  19. awk ERES 基础表达式符号介绍
  20. mysql 换文件夹_windows下更换MySql数据库数据文件夹位置

热门文章

  1. C# 第六章『交互式图形界面』◆第4节:FileDialog类 、OpenFileDialog类、SaveFileDialog类、示例
  2. java程序中的变量_Java中的变量
  3. IT民工系列——c#操控海康威视视屏监控卡(海康威视 4路视频捕捉卡 DS-4004HC)...
  4. 关于外贸的相关知识和经验(下)
  5. 解决android有的手机拍照后上传图片被旋转的问题
  6. 裁员70%,CTO亲自写代码!(聊聊职场中年危机)
  7. JAVA爬虫三剑客,JAVAWEB三剑客之Filter
  8. Laravel注意事项
  9. 《9.linux网络编程实践》
  10. 020:Mapbox GL加载高德地图(影像瓦片图)