用钩子程序实现根据一个表的字段更新另一个表的字段
问题描述:
我大概理解的是这个意思,字虽然丑。这是我第一次听说钩子程序,然后上网了解了一下基本概念:钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。不清楚的可以自己上网查一下。我这里用到的一个功能:
<!---插入或者更新数据的方法 --->
<cfinvoke component="#application.siteCfg.appPath#.cor.com.formService" method="formSubmit" argumentCollection="#formData#"returnvariable="dataServiceResult">
其实我刚开始把他想复杂了,一直在想怎样才能得到table1的最新更新的那条数据,思路一直是传统的那种Sql Server做法,怎样查询数据,更新数据。后来老大交了我钩子程序的使用方法,发现简单多了。
这是传统的做法:
insert into zz_104(cc_604,cc_605,cc_606,cc_598)
select cc_1913,cc_1919,cc_1918,cc_1923 from zz_200
go
钩子程序的完整代码:
<cffunction name="postInsert" access="remote" output="yes" returntype="any" returnformat="json" ><cfargument name="tid" default="" required="false" type="string"><cfargument name="rid" default="" required="false" type="string"><cfargument name="snapshot" default="" required="false" type="string"><cfset args=deserializeJSON(arguments.snapshot)> <cfset result={}><cfset result.FLAG=1><cfset result.Message=""> <cftry><!--- <cfquery name="q" datasource="#application.dsn#">update zz_251 set cc_1977=cc_1977+'#arguments.rid#'where autoid=#arguments.rid# and len(cc_1977) <6</cfquery>---><cfset formdata={}><cfset formdata["formid"]=104><cfset formdata["autoid"]=0><cfset formdata["skipzzLog"]=""><cfset formdata["dataflag"]='发布'><cfset formdata["aclview"]="#session.departmentid#"><cfset formdata["acl"]="#session.departmentid#"><cfset formdata["inputer"]="#session.username#"><cfset formdata["txS_cc_604"]="#args.txS_cc_1913#"><cfset formdata["txS_cc_606"]="#args.txS_cc_1918#"><cfset formdata["txS_cc_605"]="#args.txS_cc_1919#"><cfset formdata["txS_cc_598"]="#args.txS_cc_1923#"><cfinvoke component="#application.siteCfg.appPath#.cor.com.formService" method="formSubmit" argumentCollection="#formData#"returnvariable="dataServiceResult"><cfset result.message="专辑信息已添加。<a href='http://xh.ssceg.com/xinhui/cor/index.cfm##/dataForm/104/#dataServiceResult.autoid#' target='_new'>去填写更多专辑信息</a>"><cfcatch type="any"><cfdump var="#cfcatch#" output="d:\devlog\cc200.txt"></cfcatch></cftry><cfreturn result /></cffunction>
用钩子程序实现根据一个表的字段更新另一个表的字段相关推荐
- 如何更新mysql数据库字段_如何使用MySQL一个表中的字段更新另一个表中字段
1,修改1列 update student s, city c set s.city_name = c.name where s.city_code = c.code; 2,修改多个列 update ...
- oracle多表联合查询更新,ORACLE 两表关联更新三种方式
不多说了,我们来做实验吧. 创建如下表数据 select * from t1 ; select * from t2; 现需求:参照T2表,修改T1表,修改条件为两表的fname列内容一致. 方式1,u ...
- 规格选项表管理之更新规格选项表数据
更新规格选项表数据 1. 获取要修改的规格选项的详情信息 点就修改按钮时,我们需要先获取要修改的规格选项的详情信息 接口分析 请求方式: GET /meiduo_admin/specs/options ...
- 通过java程序实现mysql 批量一个表的子段更新另一个表的字段
本想通过sql语句实现发现不行,参考语句如下: update mo_indexes a,mo_paf_indexmid_indexname b set a.index_name='2' where ...
- SqlServer两表之间:根据一个表的字段更新另一个表的字段
经百度查询到如下两种写法: 1. 写法轻松,更新效率高: update table1 set field1=table2.field1, field2=table2.field2 from table ...
- 数据库两个表有一个字段互相关联,根据这个关联字段更新一张表
表A: Id Name 1 xxx 2 yyy 表B: Id Name Age 1 aaa 10 3 bbb 18 update B set B.Name=A.Name from B Inner jo ...
- mysql多表查询插入更新_Mysql多表查询,多表插入和多表更新
/*************************************by garcon1986************************************************* ...
- SQL把一个表中数据更新到另一个表的多种方法
SQL把一个表中数据更新到另一个表的多种方法 在此仅记下SQL从一个表中把数据简单地更新到另一个表的多种方法, 由于水平有限,如有不妥之处请高手指正:) SQL 从A表取数据更新到B表 的多种方法: ...
- php 多条查询结果插入新表,Mysql应用MySQL查询结果复制到新表的方法(更新、插入)...
<Mysql应用MySQL查询结果复制到新表的方法(更新.插入)>要点: 本文介绍了Mysql应用MySQL查询结果复制到新表的方法(更新.插入),希望对您有用.如果有疑问,可以联系我们. ...
- Mysql 引擎 表还是库_mysql 库、表、引擎
innoDB和myisam的区别 InnoDB支持事物,而MyISAM不支持事物 InnoDB支持行级锁,而MyISAM支持表级锁 InnoDB支持MVCC, 而MyISAM不支持 InnoDB支持外 ...
最新文章
- 0x34.数学 - 矩阵乘法
- 修改Hosts为何不生效,是DNS缓存?
- 第一章 介绍-机器学习老师板书-斯坦福吴恩达教授
- Android实现顶层全局窗口,不依赖于Activity的Android全局悬浮窗的实现
- 【学习笔记】redis一些配置文件参数详解
- 如何检测ARP病毒,arp病毒怎么解决?
- 神奇的[Caller*]属性
- Minimum spanning tree HDU - 6954
- unix c线程同步的三种方法:互斥量、读写锁以及条件变-xhb8413-ChinaUnix博客
- BZOJ5262(容斥)
- Linux内核分析与驱动编程-1
- 单片机编程软件很简单(19),keil单片机编程软件3点介绍
- 【Ubuntu】USB 摄像头测试工具
- 爆音(杂音)问题的推论与解决
- piaget读法_这些手表品牌原来是这么念的!
- Docker的安装以及解决启动失败问题
- ShowDoc在线文档工具的使用
- YumRepo Error_ All mirror URLs are not using ftp, http[s] or file. Eg. Invalid release_repo_arch co
- swift学习资料2022
- Ubuntu完全使用文档
热门文章
- pcs7服务器一直显示在同步,西门子PCS7OS系统时钟同步出现跳变的解决方法
- 人工势场法matlab讲解,传统人工势场法(matlab)
- 传统人工势场法---经典算法
- 校园网组网方案的设计
- M2Det: A Single-Shot Object Detector based on Multi-Level Feature Pyramid
- 四阶龙格库塔法(Runge-Kutta)求解常微分方程的 Matlab程序及案例
- dcs world f15c教学_【温故知新】DCS如何操作?看这篇就全懂了!
- 信息论与编码2 BCH码的构造
- 乐高ev3编程---书籍选择
- 汇编语言在线视频教程