java.sql.SQLException: ORA-01747: user.table.column, table.column 或列说明无效

cocatew 2009-12-26 04:45:07
错误代码
java.sql.SQLException: ORA-01747: user.table.column, table.column 或列说明无效

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:111)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:287)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:742)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.
java:212)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedSta
tement.java:951)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1159)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrep
aredStatement.java:3284)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePrepar
edStatement.java:3367)
at com.baidu.UserBeanCl.updateUser(UserBeanCl.java:36)
at com.baidu.UpdateCl.doGet(UpdateCl.java:25)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:293)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcesso
r.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.pr
ocess(Http11AprProtocol.java:574)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:15
27)
at java.lang.Thread.run(Unknown Source)
2009-12-26 16:02:57 org.apache.catalina.core.StandardContext reload
信息: Reloading this Context has started
destroy被调用
init被调用
sql=======update users set passwd='chensi',set email='chensi@qq.com',set grade='
1' where userid='2'
java.sql.SQLException: ORA-01747: user.table.column, table.column 或列说明无效

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java
:111)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:330)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:287)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:742)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.
java:212)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedSta
tement.java:951)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStateme
nt.java:1159)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePrep
aredStatement.java:3284)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePrepar
edStatement.java:3367)
at com.baidu.UserBeanCl.updateUser(UserBeanCl.java:36)
at com.baidu.UpdateCl.doGet(UpdateCl.java:25)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:293)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcesso
r.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.pr
ocess(Http11AprProtocol.java:574)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:15
27)
at java.lang.Thread.run(Unknown Source)
...全文
2514 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cocatew 2009-12-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 warison2008 的回复:]
update users set passwd='chensi', email='chensi@qq.com',grade='
1' where userid='2'
一个set就行啦
[/Quote]
谢谢,受教了
coveking 2009-12-26
  • 打赏
  • 举报
回复
String sql="update users set passwd='"+passwd+"',email='"+email+"',grade='"+grade+"' where userid='"+id+"'"

正解!!
youlaiyouwang 2009-12-26
  • 打赏
  • 举报
回复
列名错误,检查sql语句。到plsql developer 里执行下,看正确不。
cocatew 2009-12-26
  • 打赏
  • 举报
回复
这是我UserBeanCl.java的源码

//这是一个处理类(处理users表)<---->操作UserBean
//业务逻辑在这里

package com.baidu;

import java.sql.*;

import java.util.*;


public class UserBeanCl
{
//业务逻辑
private Connection ct=null;
private PreparedStatement ps=null;
private ResultSet rs=null;
private int pageCount=0;//共有几页(计算)

//修改用户
public boolean updateUser(String id,String email,String passwd,String grade)
{
boolean b=false;
try
{
//得到连接
ConnDB cd=new ConnDB();
ct=cd.getConn();

String sql="update users set passwd='"+passwd+"',set email='"+email+"',set grade='"+grade+"' where userid='"+id+"'";

//打印
System.out.println("sql======="+sql);

ps=ct.prepareStatement(sql);

int num=ps.executeUpdate();

if(num==1)
{
//删除成功
b=true;
}
else
{
//删除失败
}
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
this.close();
}

return b;
}
烟雨鹏城 2009-12-26
  • 打赏
  • 举报
回复
update users set passwd='chensi', email='chensi@qq.com',grade='
1' where userid='2'
一个set就行啦

81,114

社区成员

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

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