血本求助,快来呀,愁死我了,如果再解决不了的话,我就死定了。

wangweitao 2002-09-14 03:21:22
try{

Connection con=DriverManager.getConnection("jdbc:odbc:gongzibiao");
PreparedStatement pstmt=con.prepareStatement("update gongzitable set 姓名=?,年=?,月=?,日=? 年龄=?where 姓名=?,年=?,月=?,日");
pstmt.setString(jTextField1.getText());
pstmt.setString(jComboBox1.getSelectedItem().toString());
目的,当改动这四项中的某一项或是几项时,用update语句把更改后的内容覆盖原来的内容,是这一行的内容呀,而不是所有列,具体是不是这么实现的?我用的是access和jbuilder6.0呀!最好是一些代码,快快!
...全文
150 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangweitao 2002-09-15
  • 打赏
  • 举报
回复
通过不了呀,能不能更详细呀?求你,再说明白一些好吗?
andy_lv 2002-09-15
  • 打赏
  • 举报
回复
KEY
wangweitao 2002-09-15
  • 打赏
  • 举报
回复
试过,但改写的是一列,不骗你
namowen 2002-09-15
  • 打赏
  • 举报
回复
pstmt.setString(jTextField1.getText());
pstmt.setString(jComboBox1.getSelectedItem().toString());
你这么写,编译时不报错吗?
setString public void setString(int parameterIndex,
String x)
throws SQLException
Sets the designated parameter to a Java String value. The driver converts this to an SQL VARCHAR or LONGVARCHAR value (depending on the argument's size relative to the driver's limits on VARCHAR values) when it sends it to the database.
Parameters:
parameterIndex - the first parameter is 1, the second is 2, ...x - the parameter value.
应该有一个int型的参数,表示用后面的字符串来替换第几个pstmt的可替换参数。


假设姓名是主键,可以像下面这么写:
PreparedStatement pstmt=con.prepareStatement("update gongzitable set 年=?,月=?,日=? 年龄=?where 姓名=?");
pstmt.setString(1,"1980");
pstmt.setString(2,"01");
pstmt.setString(3, "01");
pstmt.setString(4, "王伟韬");
pstmt.execute();
上面这段代码的结果是:把表中姓名为"王伟韬"的那条记录的“年”、“月”、“日”这三个字段的值更新。
steven_cheng 2002-09-15
  • 打赏
  • 举报
回复
你这个SQL语句很怪。你难道不能用别的条件update?最好把你的where字句改了,用主键。
xtky_limi 2002-09-14
  • 打赏
  • 举报
回复
旁听
hubeicaolei 2002-09-14
  • 打赏
  • 举报
回复
用标记吧
int nameChange = 0;
int yearChange = 0;
int monthChange = 0;
int dayChange = 0;
int ageChange = 0;

SQL:
update gongzitable set " + nameChange?"姓名=?,":"" + yearChange?"年=?,":"" + monthChange?"月=?,":"" + dayChange?"日=?,":"" + ageChange?"年龄=?":"" + " where 姓名=?,年=?,月=?,日=?"

注意要点:
1.SQL语句中的逗号。
2.SQL语句中的问号的个数位置与上面几个标记的和有关。
wangweitao 2002-09-14
  • 打赏
  • 举报
回复
快帮我解答呀,怎么操作,最好有一些代码,谢谢!
littlecong 2002-09-14
  • 打赏
  • 举报
回复
没有主键?
wangweitao 2002-09-14
  • 打赏
  • 举报
回复
不会吧,这么笨呀,不过我还真笨,怎么实现呀?
hystream 2002-09-14
  • 打赏
  • 举报
回复
先取出这4项,再把改动的项给替换回去,存入数据库。
aben456 2002-09-14
  • 打赏
  • 举报
回复
一个笨办法:你先把这4项都取出来,然后把改动的项给替换成新的,然后再全部写回去!!!

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧