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

ファイルに保存されている実行中のSQLステートメントの実行時間を記録するにはどうすればよいですか?

    実行時間を見つけるには 、プログラムの開始時に日付オブジェクトを初期化し、それをプログラムの終了時に別の日付オブジェクトと比較する必要があります。これにより、実行にかかった時間の整数値が得られます。次に、このintを必要な場所で使用します(たとえば、コンソールやファイルなどに印刷します)

    Date startDate = new Date();
    //Run the rest of the program
    Date endDate = new Date();
    int msElapsedTime = startDate.getTime() - endDate.getTime();
    

    クエリの結果に関連してJavaプログラムで何もする必要がない場合は、runtime.exec()を使用してこれを非常に単純に保つことができます。 mysqlにクエリを実行させる。ここでの唯一の大きな欠点は、影響を受ける結果の行数を印刷できないことです。

    Date startDate = new Date();
    runtime.exec("mysql db_name < /home/liova/download/tpch/queries/Q1.sql");
    Date endDate = new Date();
    int msElapsedTime = startDate.getTime() - endDate.getTime();
    

    結果を実際に処理する必要がある場合は、runtime.exec() あなたには十分ではありません。続きを読む...

    SQLソースを読み取るには 、テキストファイルとして読んでください。 SQLの各行を個別のSQLクエリとして使用する場合は、解析と調整を行う必要があるため、最も簡単です。これが例 です。 一度に1行ずつファイルを読み取る方法です。

    SQLを実行するには 、JDBCを使用します。これがチュートリアル です。 その上に。項目1から5は、SQLの実行と結果の使用(SQL接続の確立からクエリの実行、返されるresultSetオブジェクトの処理まで)に必要なすべてのことを詳しく説明しています。これらの手順のいずれかで問題が発生した場合は、プロセスで発生している特定の問題に合わせて別の質問をするのが最善の策です。



    1. インデックス作成操作で正確に何が起こったのですか?

    2. テーブルをロックしているものを見つける方法は?

    3. すべての行のテキストを検索して置換するSQLクエリ

    4. OracleのEntityFrameworkサポートを使用してパスカルケースを強制するにはどうすればよいですか?