![]() ![]() |
|
设计可更新数据源表的本地视图 | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/6/19 14:50:23 文章录入:杜斌 责任编辑:杜斌 | |
|
|
我们在设计本地视图后,通常希望在表单应用中能更新相应数据来源的记录,即对视图添加、修改或删除的记录能反映到相应的数据表中去,实现这种更新数据源表的本地视图的方法如下。 设置关键字段。要设计一个可更新数据源的本地视图,必须给本地视图指定一个关键字段,在更新数据源时,该关键字段将作为比较本地视图记录与数据源中记录的依据,由此判别记录是否发生了变化。可以指定多个字段组合为关键字段,以保证关键字段能唯一确定记录。如果本地视图对应有多个要更新的数据源表,则必须针对每一个数据源设置至少一个关键字段。 选中更新条件页中的“发送SQL更新”复选框项。选中它后,才可将被更新的记录字段采用UpdateSQL语句对数据源中的表进行更新。 选择检测更新冲突的方式。在更新条件页中有一个“SQLWHERE子句包括”框,其中的选项用以控制将哪些字段添加到WHERE子句中,在将视图修改传送到数据源表时,可以检测服务器上的更新冲突。冲突是由视图中的旧值(而不是指修改后的值)和数据源的当前值之间的比较结果决定的(OLDVAL() 和CURVAL() 之间比较)。如果两个值相等,则认为原始值未做修改,不存在冲突;如果它们不相等,则存在冲突,数据源返回一条错误信息。 关键字段:如果在数据源表中有一个关键字字段被改变,设置WHERE子句来检测冲突。而对于由另一用户对数据源表中原始记录的其他字段所做的修改,则不进行比较。它是最保守的更新方式,完全不考虑在本地视图中输出的字段中哪些有可更新性,而只将本地视图中的所有记录用关键字段进行比较。 关键字和可更新字段:如果另一用户修改了任何可更新的字段,设置WHERE子句来检测冲突。 关键字和已修改字段:如果从视图首次检索(默认)以后,关键字字段或数据源表记录的已修改字段中,某个字段做过修改,设置WHERE子句来检测冲突。 关键字段和时间戳:用于远程视图,对本地视图无用。 SQLUPDATE方式:用视图字段中的变化来置换修改数据源表的字段值。 ---- 只有在仔细设置好上述各项内容之后,该本地视图才能用来更新数据源表数据。 |
|
![]() ![]() |