나는 작업중인 Java 프로젝트에서 기존 데이터베이스 코드를 Ormlite로 대체하려고합니다.create()에서 Ormlite throw SQLException이 발생했습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
그러나 create()를 호출하여 SQLite 데이터베이스에 개체를 삽입하면 SQLException이 throw됩니다. 나는 아마 명백한 실수를하고 있다고 생각하지만, 그것이 무엇인지 알 수 없다. 코드는 다음과 같습니다.
articleDao.createOrUpdate(article1)
을 호출하면 예외가 throw됩니다. 여기에 추적 코드가 있습니다.
java.sql.SQLException: Unable to run insert stmt on object [email protected]: INSERT INTO `articles` (`category` ,`storyid` ,`body` ,`added`) VALUES (?,?,?,?)
at com.j256.ormlite.misc.SqlExceptionUtil.create(SqlExceptionUtil.java:22)
at com.j256.ormlite.stmt.mapped.MappedCreate.insert(MappedCreate.java:90)
at com.j256.ormlite.stmt.StatementExecutor.create(StatementExecutor.java:325)
at com.j256.ormlite.dao.BaseDaoImpl.create(BaseDaoImpl.java:287)
at com.j256.ormlite.dao.BaseDaoImpl.createOrUpdate(BaseDaoImpl.java:312)
at com.myapp.tester.OrmliteBugTester.<init>(OrmliteBugTester.java:128)
at com.myapp.tester.Tester.main(Tester.java:24)
Caused by: java.sql.SQLException: NYI
at org.sqlite.Conn.prepareStatement(Conn.java:217)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.insert(JdbcDatabaseConnection.java:105)
at com.j256.ormlite.stmt.mapped.MappedCreate.insert(MappedCreate.java:63)
... 5 more
무엇이 잘못 되었나요?
안녕하세요! 하지만 내 DB를 제대로 사용하기 위해 Xerial 드라이버를 어떻게 지정할 수 있습니까? – Yarovoy
@ Yarovoy 이것은 JDBC 연결 용입니다. Android가 아닙니다. 프로젝트에 Xerial jar를 포함하면됩니다. – Gray
안녕하세요, "java.sql.SQLException : NYI"를 받고 있어요. 내 의존성을 관리하기 위해 maven을 사용하고 있습니다. 다음은 내 pom.xml의 스냅입니다. 어떻게이 예외를 해결할 수 있는지 알려주세요. com.j256.ormlite ormlite 코어 4.41 com.j256.ormlite ormlite-JDBC 4.41 org.xerial 의 SQLite JDBC 3.6. 16 dependencies> –
Sam