使用Java中的Prepared Statement创建动态名称表 [英] Create a dynamic name table with Prepared Statement in java

查看:202
本文介绍了使用Java中的Prepared Statement创建动态名称表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在java for oracle中创建一个表,同时从用户那里获取表名,或者像一个程序变量一样:

I wanna create a table in java for oracle while getting the name of table from user or like a program variable as:

String query= CREATE TABLE ? (ID NUMBER , NAME VARCHAR2(20));
PreparedStatement preStatement = connection.prepareStatement(query );
preStatement.setString(1,tableNAME);

但是我出现了INVALID TABLE NAME错误;

如何达到此目的(通过动态名称创建表)?

How can I reach to this purpose(creating a table by a dynamic name)?

非常感谢!

推荐答案

您始终可以将表名连接为字符串(在检查SQL注入的可能性之后).

You can always concatenate the tablename into the string (after checking for possibility of SQL injection).

String query= "CREATE TABLE " + tablename + " (ID NUMBER , NAME VARCHAR2(20))";

这篇关于使用Java中的Prepared Statement创建动态名称表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆