Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

creating a view using a preparedStatement and JDBC

11 views
Skip to first unread message

Duke

unread,
Feb 5, 2002, 5:37:41 PM2/5/02
to
Hello,

I'm trying to create a preparedStatement with a create or replace sql
request. Is this possible?

Here's my code that fails with the message below:

private void processStmt( Element pElem ) {

try{
String xSql = new String("create or replace view V_TEST as
( "+
" select vcf_attribute_set_v.name from "+
" vcf_attribute_set_v "+
" where "+
" vcf_attribute_set_v.language_id = ? "+
")" );

DriverManager.registerDriver(new
oracle.jdbc.driver.OracleDriver());

Connection conn =
DriverManager.getConnection("jdbc:oracle:oci8:@" + "dora3" ,
"vcfexpv31", "demoexp");

PreparedStatement wStmt1 = conn.prepareStatement( xSql );

wStmt1.setInt(1,3);

wStmt1.executeQuery();


}catch( Exception e ){
e.printStackTrace();
}
}


java.sql.SQLException: ORA-01036: illegal variable name/number

at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:1597)
at oracle.jdbc.oci8.OCIDBAccess.executeFetch(OCIDBAccess.java:1155)
at oracle.jdbc.oci8.OCIDBAccess.parseExecuteFetch(OCIDBAccess.java:1321)
at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1446)
at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1371)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1900)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:363)
at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:407)
at com.mediagrif.vcf.exporter.impl.engine.EcxPreProcessor.processStmt(EcxPreProcessor.java:194)
at com.mediagrif.vcf.exporter.impl.engine.EcxPreProcessor.execute(EcxPreProcessor.java:103)
at com.mediagrif.vcf.exporter.impl.engine.EcxPreProcessor.main(EcxPreProcessor.java:34)

Lee Fesperman

unread,
Feb 5, 2002, 7:05:36 PM2/5/02
to
Duke wrote:
>
> Hello,
>
> I'm trying to create a preparedStatement with a create or replace sql
> request. Is this possible?

You can't use ? parameters in DDL statements (like create or replace) and therefore in
views. PreparedStatement has little use for DDL.

--
Lee Fesperman, FFE Software, Inc. (http://www.firstsql.com)
===================================================================
* Check out Database Debunkings (http://www.firstsql.com/dbdebunk/)
* "Where Persistent Prevailing Database Fallacies Are Dispelled"

0 new messages