MS-SQL Server データベースを使用して Java Swing アプリケーションを開発しましたが、ボタンをクリックするだけでデータベースをバックアップし、データベースを復元する必要がある Java Swing アプリケーションでバックアップと復元のオプションを提供したいと考えています。 Javaを介してそれを行います。助けてください
3 に答える
それを行うには2つの方法があります。バックアップと復元は単なる sql コマンドなので、SQL の他のビット、たとえば sql insert ステートメントと同じように実行します。残念ながら、それらを実行するには、システムについてかなりの知識が必要です。 、進行状況インジケーターは表示されません。SQLSMO を使用することも別の可能性ですが、Java から .net dll をヒットするかどうかはわかりません。SQLDMO (pre.net) を使用することもできますが、下位互換性ツールをインストールする必要があります。DMO は (動作しているように見えますが) SQL2012 からサポートされていないため、アップグレードの頭痛の種になります。どちらにも進行状況バーにチェックを入れることができるイベントがあります。もちろん、バックアップがかなり速い場合は、それを気にせずに逃げることができます.
ただし、もう少し考えてみてください。システムの実行中にバックアップすることはできますが、そうすると、バックアップしたときにシステムがどこにあったか明確なポイントがわかりません。
復元には排他的アクセスと高レベルの権限が必要なので、手渡すものではなく、全員をデータベースから切り離す必要があります。
そして最後に、アプリケーションと一致しなくなったバージョンのデータベースを誤って復元してしまうと、非常にまずいことになります....
個人的には、これを行う権限を与えられた人は、あなたのツールがなくてもできるはずだと思います。それを馬鹿にするということは、8バージョン前に出した試用版からsql2000バックアップを復元しないようにするための多くのコードを意味します。
同様のバックアップ復元コードをアプリケーションの約 2% で実行しました。たとえば、破損したデータベースを正常にバックアップしていないことを確認するために、dbcc などを使用してバックアップ前のチェックを行います...
あなたは本当にここに少し力を入れる必要があります.
すでにデータベース サーバーに接続して SQL コマンドを送信できるので、TSQL を使用してバックアップする場合はこれをお読みください。
データベースの復元については、こちらをお読みください。
これが機能するには、ハードウェアへの適切なアクセス許可とアクセス権が必要です。
データベースをバックアップする簡単なスクリプトを作成し、それをjavaから呼び出すことができます。