Tworzę sobie nową bazę danych w Java przy pomocy Jdbc. Od razu uprzedzam pytanie, wiem, żełatwiejiprzyjemnie w jakimś MySQL Workbench czy w zwykłym cmd.
Przejdę od razu do rzeczy.
Utworzyłam sobie dwie klasy
Pierwsza
package
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DtabaseCon {
String url= //tu wiadomo
String user= ***
String password= ***
Connection conn=DriverManager.getConnection(url, user, password);
public DtabaseCon() throws SQLException {
}
public Connection getConn() {
return conn;
}
}
A druga klasa
import java.sql.SQLException;
import java.sql.Statement;
public class DatabasePoems {
public static void main(String[] args)throws SQLException {
DtabaseCon datacon=new DtabaseCon();
Statement statement = datacon.getConn().createStatement();
statement.executeUpdate("CREATE DATABASE Poems");
statement.executeUpdate("USE Poems");
statement.executeUpdate("CREATE TABLE authors(Id BIGINT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(100));"
statement.executeUpdate("INSERT INTO authors(id,name) values('1','John'),";
itd itd.
Moje pytanie brzmi czy po ostatniej linii ("INSERT INTO"...) mogę zamknąć połączenie np. tak: datacon.getConn().close();
i Po kilku godzinach wrócić sobie do pisania kodu i tworzenia dalszych tabel i insertów do tej bazy Poems, tak, żeby nie uzwględniało mi tych pierwszych czterech linii kodu tworzącej bazę Poems, tworzenia tabeli i tego jednego inserta.
Coś jak w Workbench czy linii kodu, że po jakimś czasie otwieram sobie bazę danych i dodaje kolejne tabele.
Żeby nie wywalało mi błędu:
Exception in thread "main" java.sql.SQLException: Can't create database 'Poems'; database exists