Som beskrevet i MySQL dokumentation
du skal bruge Connection.setCatalog()
for at skifte til en anden database. Der står også eksplicit, at du ikke skal udfør en BRUG
Årsagen til denne advarsel er, at JDBC er en generisk grænseflade til databaser og derfor giver metoder til de fleste almindelige opgaver, herunder at skifte kataloger
(eller databaser
som de er i MySQL). JDBC-specifikationen/javadoc siger også eksplicit, at folk skal bruge API'et over databasespecifikke kommandoer (hvis begge er tilgængelige). Der er flere grunde til dette:1) det fremmer databaseuafhængig kode, og 2) driveren kan gøre yderligere ting internt som svar på en af API-metoderne. Brug af databasespecifikke kommandoer kan få driveren til at opføre sig forkert, fordi dens interne tilstand ikke matcher databasetilstanden.
Et opkald til setCatalog(String)
vil ikke påvirke eksisterende sætninger, som specificeret i JDBC API-dokumentationen: