Webアプリケーション用にSQL Serverを使用しています。どのように私はあなたがこれを使用すると、特定のデータベースのために使用されているどのくらいのメモリあなたを与えるだろうデータベースサーバーのディスクメモリがいっぱいです
exec sp_spaceused
あなたのメモリ使用量検索したい場合は、データベース・サーバのメモリディスクが既に
Webアプリケーション用にSQL Serverを使用しています。どのように私はあなたがこれを使用すると、特定のデータベースのために使用されているどのくらいのメモリあなたを与えるだろうデータベースサーバーのディスクメモリがいっぱいです
exec sp_spaceused
あなたのメモリ使用量検索したい場合は、データベース・サーバのメモリディスクが既に
これをシミュレートするには、データベース上の自動拡張機能(ファイルタブのデータベースプロパティのチェックボックス)を無効にし、データベースをいっぱいにします。エラーは同じになります。
ALTER DATABASE YourDatabase
MODIFY FILE (name='YourFile' MAXSIZE=50MB);
いっぱいであるため、挿入クエリが失敗したことを知っているだろう
あなたが戻って取得しますエラーコードは、ディスクがいっぱいであることを示します:1105(プライマリファイルグループフル)または9902(フルログファイル)
エラーコードを確認し、あなたがしようとしたとき、あなたは戻ってSQL Serverから取得しますデータベースに挿入します。
このエラーが返された場合、何をすべきかを決定できます。 (たとえば、もう一度挿入しようとすると、 サーバ上のメモリを解放してください)また、エラーが発生した場合にロールバックできるように、Insert文をTransaction内に配置してください。
実際には、完全なディスクを持つというシナリオをシミュレートする方法はまだ見つかっていません。私が期待していた方法が見つかったら、例外がありますか? – cedric
私は、ディスクがいっぱいになると、SQL Serverがエラーコードを返すと信じていると思います。
テストコードをSQLサーバーと通信していると思うようにすることはできますが、テストするエラーコードで応答するユーザーの偽のオブジェクトと対話します。
あなたに役立つフレームワークがあります。そのうちの1つは、Rhino Mocksからダウンロードできます。http://ayende.com
ディスクがいっぱいであるということで、何をする予定ですか? –
実際にまたは物理的にハードディスクをいっぱいにしなくても、ビジュアルスタジオでフルハードディスクを使用するというアイデアをシミュレートする方法はありますか? :)私はここで単体テストをしています。そして、そのシナリオを私のテストに含めたいと思います。 – cedric