0

ASP.NET MVC 2 アプリケーションを実行している SQL 2008 R2 Express データベースがあります。

この問題が発生するのは、常に朝一番のようです。アプリケーションのログインに失敗します。そのため、次のようにデータベースに対してクエリを実行すると、SELECT * FROM tblUser結果が 1 つだけ返され (常にランダムなユーザーが返され、他のユーザーは返されません)、レコードが切り捨てられたと思われます。

たとえば、管理者ユーザーを再作成しようとすると失敗し、突然すべてのユーザーがデータベースに戻ります (SELECT * FROM tblUserクエリに反映されます) 。

データベース サービスを再起動すると問題は解決しますが、その理由を突き止める必要があります。誰にもアイデアはありますか?

4

1 に答える 1

0

解決した

ユーザー インスタンス データベースを単純にコピーして、同様のスキーマを必要とする他のプロジェクトで再度使用するという悪い習慣があります。

それを知っていた私の友人は、私のデータベース全体 (SQL Management Studio を使用してデータを含む) をスクリプト化し、そこから再作成することを提案しました。

別の友人がデータベースを Express ではなく SQL Server 2008 のフル バージョンに接続することを提案したので、私は 2 つのアイデアを組み合わせて、データベースとデータを SQL Server 2008 にスクリプト化することにしました - これはうまくいきました :)

注: また、 SQL Server のフル バージョンがいかに高速あるかを思い出させてくれました。

于 2012-11-21T07:50:21.917 に答える