sql >> データベース >  >> RDS >> Mysql

Java、現在のデータベースを別のデータベースに変更する方法は?

    MySQLで説明されているようにドキュメント Connection.setCatalog()を使用する必要があります 別のデータベースに切り替えます。また、すべきではないと明示的に述べています USE <databasename>を実行します 切り替える。

    この警告の理由は、JDBCがデータベースへの汎用インターフェースであり、そのため、catalogsの切り替えを含む最も一般的なタスクのメソッドを提供するためです。 (またはdatabases MySQLの場合と同じように)。 JDBC仕様/javadocは、データベース固有のコマンド(両方が使用可能な場合)よりもAPIを使用する必要があることも明示的に示しています。これにはいくつかの理由があります:1)データベースに依存しないコードを促進し、2)ドライバーがAPIメソッドの1つに応答して内部で追加のことを行う可能性があります。データベース固有のコマンドを使用すると、内部状態がデータベースの状態と一致しないため、ドライバーが誤動作する可能性があります。

    setCatalog(String) JDBC APIドキュメントで指定されているように、既存のステートメントには影響しません:



    1. Oracle Convert Seconds to Hours:Minutes:Seconds

    2. 外部キー制約で使用される列を変更できません

    3. PostgreSQLで中央値を計算する方法

    4. Symfony 2/DoctrineでENUMを有効にする方法