2012-10-31 2 views
0

내가 (A H2 데이터베이스를 사용하여이 경우) 사용자를 만들려고 해요는JDOQL : "CREATE USER"를 실행하는 방법? DataNucleus에 JDOQL을 사용

PersistenceManager pm=pmf.getPersistenceManager(); 
Query query = pm.newQuery("javax.jdo.query.SQL", "CREATE USER GUEST PASSWORD 'abc'"); 
query.execute(); 

결과 : org.h2.jdbc.JdbcSQLException : 방법은 쿼리 허용됩니다. executeQuery 대신 execute 또는 executeUpdate를 사용하십시오.;

어떻게하면됩니까?

감사합니다.

답변

1

pmf 속성을 설정하려고 했습니까?

JDOConnection con = pm.getDataStoreConnection(); 
Connection nativeCon = (Connection) con.getNativeConnection(); 
... 
Statement stmt = nativeCon.createStatement(); 
stmt.executeUpdate("CREATE USER GUEST PASSWORD 'abc'"); 
... 
+0

예, 내가 "datanucleus.query.sql.allowAll = 사실"이 : 당신이 시도 할 수 datanucleus.query.sql.allowAll = 사실

또 다른 방법은 같은 것입니다. 당신의 대답은 정말로 효과가있는 유일한 선택입니다. 감사. – marcolopes