JAVA如何动态的创建表

loki328 2011-05-28 08:36:37
要求根据穿过来的表明,字段,动态的创建表。
环境:spring,struts2,oracle

String basename= "testbasename";//数据库名
String tablename = "testtablename";//表名
String sql = " use" + basename+" creat table "+tablename +"(表字段名1,表字段名2,表字段名3,表字段名...)";
boolean iscreat = CreatTable(sql);
if(iscreat){ out.println("数据表创建成功!"); }else{ out.println("数据表创建失败!"); }
return this.update(sql)
??
我做了个简单的测试,结果是空指针。
...全文
299 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
holdup20080808 2011-05-30
  • 打赏
  • 举报
回复
把异常堆栈也贴进来
loki328 2011-05-28
  • 打赏
  • 举报
回复
我也没弄过。我加了个 String sql = "create table ........";
return this.Update(sq);
安心逍遥 2011-05-28
  • 打赏
  • 举报
回复
哪里报的空指针啊
没弄过,帮顶。理论上是可以的
  • 打赏
  • 举报
回复
如果传 1000000 个过来,就创建这么多表?
exterminator 2011-05-28
  • 打赏
  • 举报
回复
st.executeUpdate( query);
这个换成
st.execute(query);
试试看。
哪一行空指针?
loki328 2011-05-28
  • 打赏
  • 举报
回复
public void createtable(){
Connection conn = null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.140:1521:ORCL", "jd", "123456");
String query ="CREATE JD.TABLE JD_TETSSA(ID INTEGER,NAME VARCHAR2(10))";
Statement st = conn.createStatement();
st.executeUpdate( query);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}


为什么还是空指针啊

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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