我正在学习如何将数据库实现到音乐播放器应用程序中,并决定使用嵌入式H2数据库进行实现。
public class H2EmbeddedDB {
public H2EmbeddedDB() {
try {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection("jdbc:h2:~/data/musicAppDB", "sa", "");
Statement st = conn.createStatement();
/*
String createTableSQL = "CREATE TABLE PLAYLISTS " +
"(playlistID INTEGER not NULL, " +
" playlistName VARCHAR(255), " +
" musicToContinuePath VARCHAR(255), " +
" durationToContinue INTEGER)";
st.execute(createTableSQL);
*/
String sql = "INSERT INTO PLAYLISTS " + "VALUES (123456789, 'Zara', 'C:\\Music', 18)";
st.executeUpdate(sql);
ResultSet rs;
rs = st.executeQuery("select * from playlists");
while (rs.next()) {
System.out.println(rs.getString("playlistName"));
}
conn.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
只是一个简单的测试类,我在创建表后注释掉了create table。一切正常,应用程序打印出Zara'喜欢它应该,但我无法在Intellij数据库工具中找到该表。
[我如何导入数据库] https://i.gyazo.com/e2c1360729d53f837ffe3195290db7fa.png
[在数据库中没有显示任何内容] https://gyazo.com/4ddc9cea065bd928471aff0805130f73
我知道它存储数据库的位置,它在我的用户文件夹/数据中,并且在与intellij客户端连接时我尝试将绝对路径放入其中。连接测试也成功。