slavetable有两种情况,

从表有三个要素

1、自己主键字段的idfield

2、对应主表的主键字段masterIdField

3、对应主表主键的值

模式一、MasetrEdit模式  也就是主表记录编辑模式

此时,主表记录的id值是确定的

slavetable的动作:

m_initial(bean or modulename,linkfield)

m_setMasterEditMode(masterfieldvalue)

listview m_selectFromMasterId() 从从表中查询符合主表id主的,然后listview显示

editview,此时masteridvalue是确定的,锁定的,不需要添加

addview,此时masteridvalue是确定的,锁定的,自动添加

初始化的时候得到 自己的idfield,master对应的idfield

模式二、MasterAdd模式,也就是主表记录新增模式

slavetable的动作:listview 为空,不需要显示,因为是新增

addview,里面masterIdValue是空的,锁定的,不需要添加,

从listview中得到的,editview ,masterIdValue是空的,锁定的,不需要添加

问题1:slavetable会在没有主表id值得情况下,被使用吗?

答:会,主要是在主从表添加的时候,此时还不知道主表的id值

但是在MasterSlave的editview情况下,是有masterid值的

答案:slavetable是根据主表而出现的一种形式,所以,主表的addview,和editview对于slavetable是不同的。

如果主表处于addview方式时,slavetable中,对应主表的id值没有,所以在新增和显示时,都没有显示

如果主表处于editview方式时,slavetable的对应的主表id已经有值,所以需要显示并自动增加。

一、listview

一、标准的主从使用

此时,因为master还没有保存,可能还没有得到master的id。\

所以,从表在增加时,是不知道masterid的,

那么此时的idfield需要显示吗?实际上,在addview时,不需要显示,在editview时需要显示。

如果此时idfield为 int字段,则显示会有错乱,因为会全部显示为0,而其实在新增时,会另外赋予真正的值。

所以,在tag=new时,id的值,应该不显示????这个仅限于id为自增长或者guid的情况,因为会自动增加。

这就意味着,slavetable有一个限制,只适应于id为在新增的时候自动增加id值的情况。

如果id为其他可识别的标识,只能用脚本改变,??????

二、单独的从表使用方式

此时,应该知道masterid的值

关于slavetable的更多相关文章

  1. Oracle 外键级联更新

    Oracle数据库中,外键约束只允许级联删除,不允许级联更新,因此,如果想要实现主表数据更新后,子表外键自动更新,只能取消外键关系,通过前端程序来维护实现完整引用,一个代替的解决方案是使用延迟约束和触 ...

随机推荐

  1. 《算法》第三章部分程序 part 4

    ▶ 书中第三章部分程序,加上自己补充的代码,包括散列表.线性探查表 ● 散列表 package package01; import edu.princeton.cs.algs4.Queue; impo ...

  2. ubuntu 14.04 安装 Apache Thrift 0.10

    1.到官网下载源码压缩文件 https://thrift.apache.org/download 2.安装依赖软件,可以参考 https://thrift.apache.org/docs/instal ...

  3. 学python的第二天

    我是一个有一点点c语言基础的大二学生,今天的积累 cd指令=change directory(目录) dir=查看当前目录文件列表 convert   转化   defind  定义 cd ..   ...

  4. python_04 基本数据类型、数字、字符串、列表、元组、字典

    基本数据类型 所有的方法(函数)都带括号,且括号内没带等号的参数需传给它一个值,带等号的参数相当于有默认值 1.数字 int 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1 ...

  5. HTTP梳理

    HTTP请求头 Host:初始URL中的主机名和端口 Accept:浏览器可接受的MIME类型 Acceept-Charset:浏览器接受的字符集 Accept-Encoding:浏览器能够进行解码的 ...

  6. MySQL null与not null和null与空值''的区别

    参考连接:https://segmentfault.com/a/1190000009540449 相信很多用了MySQL很久的人,对这两个字段属性的概念还不是很清楚,一般会有以下疑问: 我字段类型是n ...

  7. HashSet和LinkedHashSet解析

    一.简介 1.Set概念 Set可以理解为集合,非常类似数据概念中的集合,集合三大特征:1.确定性:2.互异性:3.无序性,因此Set实现类也有类似的特征. 2.HashSet HashSet继承自A ...

  8. python学习笔记之斐波拉契数列学习

    著名的斐波拉契数列(Fibonacci),除第一个和第二个数外,任意一个数都可由前两个数相加得到: 1, 1, 2, 3, 5, 8, 13, 21, 34, ... 如果用Python的列表生成式, ...

  9. 【376】COMP 9021 相关笔记(二)

    Note_01 zip() itertools.zip_longest() %time Note_02 for 循环单行输出 list 技巧 迭代器 生成器 map() zip() from path ...

  10. proxool连接sqlerver

    原先proxool连接sqlserver,用的是sqljdbc,不知道怎么回事,怎么也连接不上.下面的代码既不报错也不执行下去,应该是驱动出了问题,网上也很难找到sqljdbc什么版本. if (_c ...