标题:如何用VFP的临时表,去更新远程sql或mysql的数据库表!
只看楼主
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:187
专家分:0
注 册:2010-4-23
结帖率:83.64%
已结贴  问题点数:20 回复次数:8 
如何用VFP的临时表,去更新远程sql或mysql的数据库表!
如何用VFP的临时表,去更新远程sql或mysql的数据库表! 网上的一些贴子和方法我都试了,没有用。

环境:vfp 9.0 ; mysql8.0  ;vfp临时表temp; mysql数据库表byhmc ;vfp表单表格FORM.grid

一:在FORM.grid 的init
sqlexec(nhandle,'select * from byhmc','byhmc') &&连接mysql数据库表byhmc,读取数据。

select * from byhmc where dwdm=BH into cursor temp readwrite  &&查dwdm=BH记录,存于临时表temp中。
thisform.grid1.RecordSource="temp"
二:通过修改临时表:temp 的数据值。更新到mysql数据库表byhmc。
不会!不会!网上介绍的方法都试了,没用。
请哪位老师赐教1

     
搜索更多相关主题的帖子: mysql 数据库表 更新 临时表 VFP 
2019-09-05 10:41
radiofan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:466
专家分:696
注 册:2006-7-30
得分:7 
首先,你的临时表是可以更新的,然后提交更新数据到后台,sqlexec(nhandle,'update tabname set xx = xx where xx = xx'),最后,updatetable你的临时表。
2019-09-05 16:43
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:7 
关键的一点,你的远程表必须有主键!
2019-09-05 20:23
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:187
专家分:0
注 册:2010-4-23
得分:0 
回复 3楼 厨师王德榜
有主键,但更新不了!可能是这种通过select 生成的临时表就是更新不了,需要重新用其他方法生成表。
2019-09-06 09:46
radiofan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:466
专家分:696
注 册:2006-7-30
得分:0 
1、获取数据到本地临时表
2、设置本地临时表为表或行缓冲
3、开始后台事务
4、提交数据到后台
5、回滚或结束后台事务
6、更新本地临时表。
2019-09-06 11:13
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:352
专家分:1152
注 册:2015-10-2
得分:7 
用临时表更新远程表,是vfp处理数据常见的,很常规的事。下面是其中一种方法:(硬代码方式,非宏方式为了好理解)(供参考)
 select temp (假如临时表已经打开)
 go top
 scan && 用 do while !eof()循环也行
  *临时表的字段值1,字段值2,字段值3 ...,赋值成一个个参数,参数名自定.比如: c01=字段值1,c02=字段值2,c03=字段值3,...(每行赋值一次)
  *sqlexec(nhandle,'update 远程表名 set 远程表字段名1=?c01,字段名2=?c02,字段名3=?c03, ... where 条件') (假如已有了连接)
 endscan
 


[此贴子已经被作者于2019-9-6 21:15编辑过]

2019-09-06 12:10
radiofan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:466
专家分:696
注 册:2006-7-30
得分:0 
以下是引用wangjiayu45在2019-9-6 09:46:08的发言:

有主键,但更新不了!可能是这种通过select 生成的临时表就是更新不了,需要重新用其他方法生成表。


首先你要知道,表中的哪一行需要更新到后台,不是一股脑儿都提交更新。

最好给个具体的事例,看看问题出在哪里!
2019-09-06 12:14
wangjiayu45
Rank: 1
等 级:新手上路
帖 子:187
专家分:0
注 册:2010-4-23
得分:0 
已经成功解决!!

[此贴子已经被作者于2019-9-6 15:41编辑过]

2019-09-06 14:25
wangdi_2022
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2022-11-26
得分:0 
回复 8楼 wangjiayu45
您好!我刚入门,是怎么解决的?帮我一下,谢谢
2022-11-26 18:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-496698-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.383834 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved