sql >> Database teknologi >  >> RDS >> Mysql

Java, hvordan ændres nuværende database til en anden?

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 for at skifte.

Å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:



  1. Rails-MySQL-fejl - uinitialiseret konstant MysqlCompat::MysqlRes

  2. Kan nogen anbefale en god tutorial om MySQL-indekser, specifikt når de bruges i en ordre efter klausul under en joinforbindelse?

  3. Hvordan specificerer man sortering med PDO uden SET NAMES?

  4. PHP-advarsel:PHP-start:Kan ikke indlæse det dynamiske bibliotek '/usr/lib/php/20151012/msqli.so'