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

ResultSetなしでResultSetMetaDataと同等のものを取得する方法

    多分あなたは

    を使うことができます
    DatabaseMetaData databaseMetaData = connection.getMetaData();
    databaseMetaData.getColumns(null, null, tableName, "%");
    

    テーブルの列ごとに1行を返します。

    この場合、返されたResultSetを使用します ResultSetMetaDataではなくそれ自体 。

    このアプローチの利点の1つは、データベースのロックとトランザクションに干渉しないことです。



    1. 複数の述語のカーディナリティ推定

    2. MySQL8.0.22での非同期レプリケーションの自動フェイルオーバー

    3. MySQLでの日付範囲の競合のチェック

    4. SQLServerの一時オブジェクトのキャッシュ