免费注册 查看新帖 |

Chinaunix

广告
  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1575 | 回复: 3
打印 上一主题 下一主题

新手:请问这样返回错在哪里? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-05-23 13:20 |只看该作者 |倒序浏览
package com.Myself.database.calculate;

//查询数据库中某表的metrix,arg为表名,然后给+1重新赋值
//然后把新的metrix重新插入到数据库
import java.sql.*;
import com.Myself.database.define.ConnectDatabase;

public class CountMetrix {
  //查询出数据库中metrix值并+1
  public static int  countMetrix(String tableName,int id) throws SQLException{
    try{
      Connection conn = ConnectDatabase.getConnection();
      String sqlQuery = "select metrix from " + tableName+"where id="+id;;
      Statement stmt = conn.createStatement();
      ResultSet rst = stmt.executeQuery(sqlQuery);
      while(rst.next()){
        int metrix=rst.getInt(1)+1;
      }
    }
    catch (Exception e){
      e.printStackTrace();
    }
     return metrix;
  }
  
  //把新的metrix插入到数据库,要返回是否插入成功
  public static int  UpdateMetrix(String tableName,int id) throws SQLException{
    try{
      int isSuccess;
      Connection conn = ConnectDatabase.getConnection();
      String sqlUpdate = "update "+tableName+"set metrix="+CountMetrix.countMetrix(tableName,id)+"where id="+id;
      Statement stmt = conn.createStatement();
      isSuccess= stmt.executeUpdate(sqlUpdate);
      }
     catch (Exception e){
      e.printStackTrace();
    }
     return isSuccess;  }
}


上边的红色都会导致出错."cannot resolve symbol",请教应该怎么返回。新手,谢谢您的阅读

论坛徽章:
0
2 [报告]
发表于 2004-05-23 15:28 |只看该作者

新手:请问这样返回错在哪里?

把那两个变量的声明移动到try-catch块的外边去。

论坛徽章:
0
3 [报告]
发表于 2004-05-23 20:21 |只看该作者

新手:请问这样返回错在哪里?

放到外面去了以后,会提示变量没有被初始化.

论坛徽章:
0
4 [报告]
发表于 2004-05-24 07:34 |只看该作者

新手:请问这样返回错在哪里?

那你就初始化一下那两个变量啊?变量在声明的时候初始化是个好习惯,至少不用依赖于编译器的初始化了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP