繁体   English   中英

Java,MySQL使用ID(主键)更新表

[英]Java, MySQL updating table using ID (primary key)

我有一个使用MySql和Java JDBC的程序。

我的问题是:

我有一个表( TEMP ),其ID仅是1列,而另一个表是具有用户个人详细信息(例如ID,姓名,年龄等)的表。

我试图从TEMP表中检索ID并更新USER表中未填写的信息,例如姓名,年龄,地址等。

这是我写的查询:

update m_auth_info 
set name  = '"+name+"', 
    addr  = '"+addr+"', 
    email = '"+email+"', 
    affiliation = '"+affil+"', 
    status = '"+1+"'  
where a_id = '"+ResultSet+"'";

当我的getIdMethodTEMPgetIdMethod ID检索到ResultSet中时。 我无法更新USER TABLE。

但是,如果我直接给出ID,它就可以工作。

update m_auth_info 
set name = '"+name+"', 
    addr = '"+addr+"', 
    email = '"+email+"', 
    affiliation = '"+affil+"', 
    status = '"+1+"'  
where a_id = '"+8989+"'";

请告诉我是否必须在我的getIdMethod编写哪个步骤,以免将该值ResultSetResultSet

int id=0;
String sql = "Select ID from Temp";
ResultSet rs = statement.executeQuery(sql);

while(rs.next(){
   id = rs.getInt(1);
  /*   pass your update query here and use like this it should work for you
    update m_auth_info  set name  = '"+name+"',
    addr  = '"+addr+"',  email = '"+email+"', 
    affiliation = '"+affil+"', status = '"+1+"'  where a_id = '"+id+"'";*/
}

我相信您要尝试的是从ResultSet获取结果,您可以对ResultSet variable rs.getLong(0) getYourIdType0 )或columnName

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM