0
SQLiteとJavaで問題が発生しました。私はプログラマが例外を使うように提案した答えのいくつかを見てきました。これは私が使用しましたが、私のコードはまだJavaを使用してSQLiteでINSERT操作が機能しない
java.sql.SQLException: no such table: australia
私は、この1つのエラーを与えているし、レコードが作成されたデータベースに更新されていません:、playlistNameInsert.getText()
の値がAustralia
の値を持つ
Class.forName("org.sqlite.JDBC");
Connection connect = DriverManager.getConnection("jdbc:sqlite:playlist.sqlite");
System.out.println("Playlist db opened");
Statement saveStatement = connect.createStatement();
saveStatement.executeUpdate(makeTable);
try {
ResultSet getAllSameGenre = artStmt.executeQuery("SELECT * FROM tracklist WHERE genre = '" + storeGenre + "' ORDER BY RANDOM() LIMIT 10");
while(getAllSameGenre.next()){
int id = 1;
String title = getAllSameGenre.getString("title");
String artist = getAllSameGenre.getString("artist");
String genre = getAllSameGenre.getString("genre");
String album = getAllSameGenre.getString("album");
Statement finalRecord = connect.createStatement();
String storeTableName = playlistNameInsert.getText();
String record = "INSERT INTO " + storeTableName + " (id , title, artist , genre , album)" + "VALUES ('" +id+title+artist+genre+album+ " '); " ;
finalRecord.executeUpdate(record);
id ++;
}
saveStatement.close();
connect.close();
}
catch(Exception e){
System.out.println(e);
}
5つの列に1つの値を挿入しています。典型的なように、変数置換後にSQLを出力した場合、問題は明らかになります。 –
あなたのinsertクエリで問題があると思います。INSERT INTO TABLE_NAME(ID、タイトル、アーティスト、GENRE、ALBUM)のようなINSERTステートメントを更新してください VALUES(4、 'TITLE'、 'ARTIST'、 'GENRE' 'ALBUM_NAME'); " – Sreejin