使用Java中的Prepared Statement创建动态名称表 [英] Create a dynamic name table with Prepared Statement in java
本文介绍了使用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屋!
查看全文