Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Java, bagaimana cara mengubah database saat ini ke yang lain?

Seperti yang dijelaskan dalam MySQL dokumentasi anda perlu menggunakan Connection.setCatalog() untuk beralih ke database lain. Itu juga secara eksplisit mengatakan bahwa Anda harus tidak jalankan USE <databasename> untuk beralih.

Alasan untuk peringatan ini adalah bahwa JDBC adalah antarmuka generik ke database dan karenanya menyediakan metode untuk sebagian besar tugas umum, termasuk beralih catalogs (atau databases seperti yang ada di MySQL). Spesifikasi JDBC/javadoc juga secara eksplisit mengatakan bahwa orang harus menggunakan API melalui perintah khusus basis data (jika keduanya tersedia). Ada beberapa alasan untuk ini:1) ia mempromosikan kode yang tidak bergantung pada basis data, dan 2) pengemudi mungkin melakukan hal-hal tambahan secara internal sebagai tanggapan terhadap salah satu metode API. Menggunakan perintah khusus database dapat menyebabkan driver berperilaku tidak semestinya karena status internalnya tidak cocok dengan status database.

Panggilan ke setCatalog(String) tidak akan memengaruhi pernyataan yang ada, sebagaimana ditentukan dalam dokumentasi API JDBC:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menggunakan GROUP_CONCAT pada subquery di MySQL

  2. Kesalahan kompatibilitas penyedia basis data kerangka kerja entitas

  3. Cara memilih jumlah nilai yang dikelompokkan berdasarkan rentang

  4. Bagaimana saya bisa memperlambat dump MySQL agar tidak memengaruhi beban saat ini di server?

  5. Bidang datetime MySQL dan waktu musim panas -- bagaimana cara mereferensikan jam tambahan?