标题:mysql中,我想先对表的某些字段进行更新,然后再选出几个记录插入到另一个表 ...
只看楼主
distorting
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-1-4
 问题点数:0 回复次数:6 
mysql中,我想先对表的某些字段进行更新,然后再选出几个记录插入到另一个表中,但

1)先是执行更新
sql = "select * from sellrequire";
stmt1 = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
rs1 = stmt1.executeQuery(sql)
while (rs1.next()){......rs1.updateRow();}

2)接下来是从该表中选部分记录,通过while循环依次插入到另一个表中。
sql = "select id,requiresimilarity from sellrequire order by requiresimilarity desc limit 0,similarrequirenum";
stmt2 = conn.createStatement() ;
rs2 = stmt2.executeQuery(sql); //得到最相似的卖方的ID和相似度
while (rs2.next()) {...}

我起先怀疑是不是要把先前的rs1关闭,但关闭了也还是不行,不知道是什么原因?
谢谢!

搜索更多相关主题的帖子: 字段 mysql 记录 
2007-01-18 09:41
支离破碎
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:737
专家分:0
注 册:2007-1-4
得分:0 
rs1 = stmt1.executeQuery(sql)这个好像不是更新吧~~~~

人生漂泊無依,有如浮萍菱花,隨水飄流,你会在我这里停留吗?
[url=http://51mynet.]http://51mynet.[/url]
2007-01-18 10:46
飘飘叶子
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:597
专家分:10
注 册:2005-8-17
得分:0 
executeQuery是查询……
好像是executeUpdate?我忘记了……很久没用了……

向着软件工程师的目标前进!
2007-01-18 12:32
distorting
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-1-4
得分:0 
更新,我是可以正常进行的,但后面的查询不正常
executeQuery是查询,但我在createStatement里面传递的参数,是可更新的,所以更新是正常的。
然后我想对更新后的表进行查询,并将查询结果拷贝到另一个表中,也就是后一部分,执行不正常,感觉象没做一样。不知道是为什么?是不是不能对同一个表在没有关闭连接的情况下,不能进行连续的查询操作?

2007-01-19 08:54
无理取闹
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:53
帖 子:4264
专家分:0
注 册:2006-7-26
得分:0 
是不是两段代码逻辑上有问题啊
单独执行后一段代码测试一下 看是否能达到插入的功能

win32汇编
病毒 加密
目前兴趣所在
2007-01-19 09:20
distorting
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2007-1-4
得分:0 
谢谢提醒!

我在没有预期执行的那段代码单独出来,问题找到了,是SQL语句错了,我应用将一个字符串和一个变量相加的,结果直
接写到字符串里了,所以执行就不对了。

正确的应该是这样的:
sql = "select id,requiresimilarity from buyrequire order by requiresimilarity desc limit 0,"+similarrequirenum;

但我写成了:
sql = "select id,requiresimilarity from buyrequire order by requiresimilarity desc limit 0,similarrequirenum";
其中similarrequirenum是变量名。


2007-01-20 10:32
steamwaterss
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-1-19
得分:0 
分析一下前后代码,运作流程 这个内容不显示,除非你的浏览器不支持  

我很懒,没有留下签名
2007-01-20 10:39



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




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

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