데이터베이스를 연결하고 연결된 데이터베이스의 모든 행을 기본 데이터베이스에 삽입하는 데 문제가 있습니다.Java에서 Sqlite 데이터베이스 연결
여기 내 코드입니다.
public void selectOldDb(String dbName) throws Exception {
createNewDB();
Class.forName("org.sqlite.JDBC");
Connection connOldDb = DriverManager.getConnection("jdbc:sqlite:"+ dbName);
String newDbName = getDirToNewDb();
newDbName = newDbName + "auftraege.db";
Connection connNewDb = DriverManager.getConnection("jdbc:sqlite:"+ newDbName);
connNewDb.prepareStatement("ATTACH DATABASE \"" + connOldDb + "\" AS fromDB").execute();
connNewDb.prepareStatement("INSERT INTO main.auftraege SELECT * FROM fromDB.SendeDS").execute();
connNewDb.close();
connOldDb.close();
}
삽입하려고하면이 오류가 발생합니다.
[SQLITE_ERROR] SQL 오류 또는 누락 된 데이터베이스 (그런 테이블 : fromDB.SendeDS) 내가 잘못하고있는 중이 야 무엇
?
두 가지 가능성이 있습니다 : 1) 테이블이 존재하지 않는 경우 2) 데이터베이스 또는 테이블 이름에 오타가 있습니다. –
답변 해 주셔서 감사합니다. 테이블이 있습니다. 나는 연결 후 결과 세트로 그것을 테스트 해 본다. 그러나 오타로 무엇을 의미합니까? – user1761808
오타 (typo) 란,'SendeDS'가 실제로 쿼리하려는 테이블의 이름인지 다시 한 번 확인해야한다는 의미입니다. 내가 영어 원어민 이니까, 대신에 당신이 "SendDS"또는 "SenderDS"중 하나를 선택했을 가능성이 있음을 알았습니다. 이러한 오타는 간과하기 쉽습니다. 나는 당신이 이것을 두 번 확인하도록 제안하고 있습니다. –