1. ldap_oc_mappings    存储objeckClass 信息


表结构: 

Column

Desc.

id

objectClass的唯一标识

name

objectClass的名称

keytbl

对应的自定义表格名称

keycol

对应的自定义表格中关键字字段名称

create_proc

新增一个object时使用的SQL语句

delete_proc

删除一个object时使用的SQL语句

expect_return

执行新增或删除object的SQL语句,代表操作成果的SQL CODE值,通常是0。

实际数据: 

id
name
keytbl
keycol
create_proc
delete_proc
expect_return
1 organization
organization
id


2 organizationalUnit
org_unit
id


3 inetOrgPerson
users
id


2.    ldap_attr_mappings   存储 ldap中属性attribute 和objectclass 的连接关系

    表结构:

Column

Desc.

id

attribute唯一标识

oc_map_id

所属objectClass的唯一标识

name

Attribute名称

sel_expr

SELECT后面的SQL语句

sel_expr_u


from_tbls

FROM后面的SQL语句

join_where

WHERE后面的SQL语句

add_proc

修改一个attribute值时使用的SQL语句

delete_proc

删除一个attribute值时使用的SQL语句

param_order

官网给出的例子中,这个字段的值全是3

expect_return

执行修改或删除attribute值的SQL语句,代表操作成果的SQL CODE值,通常是0。

实际数据: 


id
oc_map_id
name
sel_expr
sel_expr_u
from_tbls
join_where
add_proc
delete_proc
param_order
expect_return
1 1 dc name
organization



3
2 2 ou name

org_unit


3
3 3 uid uid
users


3
4 3 sn name_en
users



3
5 3 cn name_cn
users



3
6 3 userPassword password
users



3
7 3 mail email
users



3

3.  ldap_entries 存储所有entry信息
表结构:

Column

Desc.

id

entry唯一标识

dn

entry的dn

oc_map_id

所属objectClass的唯一标识

parent

父节点entry的唯一标识

keyval

对应的自定义表格中,该对象的唯一标识。

实际数据 

id
dn
oc_map_id
parent
keyval
1 dc=xywy,dc=com 3
1
2 ou=users,dc=xywy,dc=com 1 1 1
3 uid=admin,ou=users,dc=xywy,dc=com 2 2 1
4 uid=fuzengjie,ou=users,dc=xywy,dc=com 2 2 2

4   organization 存储Basc DN 即 目录树的根

表结构

Column

Desc.

id

目录树的ID

name

目录树的name

实际数据: 
id name
1 xywy
5.org_unit 存储OU 组织单元 
表结构: 

Column

Desc.

id

OU的ID

name

OU的name

实际数据: 
id name
1 users
6.users   存储 OU users的具体 信息 
表结构: 
Column desc:
id 用户IP
name_en 用户中文名
name_cn 用户英文名
password 用户密码
email
用户邮箱
code code值

实际数据: 

id name_en
name_cn
password
email
code
1 admin admin 1234 admin@xywy.com 1
2 fuzengjie fuzj 1234 fuzengjie@xywy.com 34

ldap 测试表设计的更多相关文章

  1. Django学习——Django测试环境搭建、单表查询关键字、神奇的双下划线查询(范围查询)、图书管理系统表设计、外键字段操作、跨表查询理论、基于对象的跨表查询、基于双下划线的跨表查询

    Django测试环境搭建 ps: 1.pycharm连接数据库都需要提前下载对应的驱动 2.自带的sqlite3对日期格式数据不敏感 如果后续业务需要使用日期辅助筛选数据那么不推荐使用sqlite3 ...

  2. Oracle 课程三之表设计

    完成本课程的学习后,您应该能够: •普通堆表优点和缺点 •理解rowid •全局临时表优点.缺点和适用场景 •分区表的类型和原理.优点和缺点.适用场景 •表字段的高效设计 •sequence的设计   ...

  3. 走向DBA[MSSQL篇] 针对大表 设计高效的存储过程【原理篇】 附最差性能sql语句进化过程客串

    原文:走向DBA[MSSQL篇] 针对大表 设计高效的存储过程[原理篇] 附最差性能sql语句进化过程客串 测试的结果在此处 本篇详解一下原理 设计背景 由于历史原因,线上库环境数据量及其庞大,很多千 ...

  4. 【数据库】Mysql中主键的几种表设计组合的实际应用效果

    写在前面 前前后后忙忙碌碌,度过了新工作的三个月.博客许久未新,似乎对忙碌没有一点点防备.总结下来三个月不断的磨砺自己,努力从独乐乐转变到众乐乐,体会到不一样的是,连办公室的新玩意都能引起莫名的兴趣了 ...

  5. mysql系列十一、mysql优化笔记:表设计、sql优化、配置优化

    可以从这些方面进行优化: 数据库(表)设计合理 SQL语句优化 数据库配置优化 系统层.硬件层优化 数据库设计 关系数据库三范式 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非 ...

  6. 巨蟒django之权限6: 权限控制表设计&&登录权限

    1.权限控制表设计 内容 . 什么是权限? . 为什么要有权限? 不同用户拥有不同的功能 . 在web开发中,什么是权限? url 代表 权限 . 开发一个权限的组件,为什么要开发组件? . 表结构的 ...

  7. 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效

    数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...

  8. 【原创】面试官:讲讲mysql表设计要注意啥

    引言 近期由于复习了一下mysql的内容,有些心得.随手讲其中一部分知识,都是一些烟哥自己平时工作的总结以及经验.大家看完,其实能避开很多坑.而且很多问题,都是面试中实打实会问到的! 比如 OK,具体 ...

  9. 面试mysql表设计要注意啥

    面试官:讲讲mysql表设计要注意啥? 引言 大家应该知道烟哥最近要(tiao 咳咳咳),嗯,不可描述! 随手讲其中一部分知识,都是一些烟哥自己平时工作的总结以及经验.大家看完,其实能避开很多坑.而且 ...

随机推荐

  1. JDBC SQL语法

    结构化查询语言(SQL)是一种标准化语言,允许对数据库执行操作,例如:创建数据记录,读取内容,更新内容和删除数据记录等. 本教程中将概述SQL,这是了解和学习JDBC概念的前提条件. 经过本章后,您将 ...

  2. MyBatis分页

    搞清楚什么是分页(pagination) 例如,在数据库的某个表里有1000条数据,我们每次只显示100条数据,在第1页显示第0到第99条,在第2页显示第100到199条,依次类推,这就是分页. 分页 ...

  3. mvn archetype:generate 创建Maven项目

    mvn archetype:generate 创建Maven项目 mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编译测试源代码 mvn test ...

  4. e824. 获得和设置JSplitPane中的子组件

    // Create a left-right split pane JSplitPane hpane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, lef ...

  5. (原创)关于FFmpeg的一些有关的初始化默认值的问题

    最近手头上要做一个媒体格式分析库,能解析文件,流的视频格式,编码格式等一些重要的视频参数能进行尽量多的提取.当我们做媒体相关方面的东西,自然而然就会想到FFmpeg这个强大的开源媒体库,所以我们肯定会 ...

  6. Linux下的rename命令

    Dos/Windows下,对文件改名用rename.而书上说,Linux下对文件或目录改名该用mv.我一直也是这样做的,却忽略了Linux下也有个叫rename的命令.都是rename,但功能上就有点 ...

  7. Java非递归的方式获取目录中所有文件(包括目录)

    零.思路解析 对于给出的文件查看其下面的所有目录,将这个目录下的所有目录放入待遍历的目录集合中,每次取出该集合中的目录遍历,如果是目录再次放入该目录中进行遍历. 一.代码 /** * 非递归的方式获取 ...

  8. 5.5 进入编辑模式 5.6 vim命令模式 5.7 vim实践

    5.5 进入编辑模式 5.6 vim命令模式 5.7 vim实践 进入编辑模式 小写i在当前字符前插入 大写I 在光标所在行的行首插入 大写O 在光标上面一行插入编辑 小写o在光标下面一行插入编辑 小 ...

  9. 带你玩转Eclipse项目转成AndroidStudio项目

    随着Android对Eclipse开发工具的淘汰,越来越多的公司使用AndroidStudio进行相应的Android开发工作.如此,原来用Eclipse开发的项目,怎么导入到AndroidStudi ...

  10. centos6.5 手动安装gcc

    gcc版本:gcc-4.4.7 rpm -Uvh  mpfr-2.4.1-6.el6.x86_64.rpm rpm -Uvh  cpp-4.4.7-16.el6.x86_64.rpmrpm -Uvh  ...