java.sql.SQLException:ORA-00903:表名无效

String sql="select * from ? ";
try {
con=JdbcUtils.getConnection();
ps=con.prepareStatement(sql);
ps.setString(1, bankno);
rs=ps.executeQuery();

..............................

第1个回答  2015-09-05

    查看表名是否有误

    查看连接的数据是否有误,比如mysql查看数据库,oracle查看实例名是否有误

第2个回答  2013-08-18
ps.setXXX我记得是不能设置表名,只能设置表的字段。
第3个回答  2013-08-18
拜托,你的表的名字是问号哦!

追问

我这个表是动态生成的,并不知道它是什么,和那应该怎么做呢?

追答那就动态的传入形式参数呀,把表名作为一个字符串参数传过去呀,你总得有制作表名的方法吧,你就从那个方法里面获取咯

追问

了解了,还有一个问题,报错说java.lang.InstantiationException: cn.neusoft.atm.dao.BankCardDao
构造方法已经改为PUBLIC 的

追答我不知道你封装的cn.neusoft.atm.dao.BankCardDao这个里面是干啥的哦,就是一个dao异常呗
处理数据的时候的异常咯,你debug一下吧

本回答被提问者采纳

jdbctemplate sql 的表名可以使用占位符吗
不可以,会抛出异常:java.sql.SQLException: ORA-00903: 表名无效

相似回答