0

だから、皆さん。ここで興味深い出来事が起こっています。

最近まで SQL Server 2008 データベースに接続していた VS2008 で作成された Windows フォーム アプリケーションがあります。データベース内のさまざまなテーブルを編集、挿入、削除、または選択することができ、変更がコミットされました。SQL クエリを介してデータベースに変更を加えるたびに、その変更がデータベース内に反映されました。

しかし、ここ数日のうちに、データベース ファイルを VS studio .SLN にインポートし、データセットの数を 3 つから 1 つに減らしました (便宜上、異なるテーブルを組み合わせました)。データベースはコミットしません。

次の動作を観察しました。

1) テーブルへのレコードの挿入または削除がコミットされません。次にプログラムを実行すると、削除されたレコードが戻ってきて、挿入されたレコードはすべて失われます。以前は、Insert と Delete は、実行時に変更をコミットしているように見えました。

2) UPDATE コマンドを使用して変更を手動でコミットすると、追加されたレコードが残り、削除されたレコードは消えたままになりますが...

3) 何らかの理由でソリューションを再構築すると、データベースは最初にデータベースの場所を変更したときの状態に「リセット」されます。

このタイプの動作を作成するために、私が今別の方法で行っていることについて誰か考えがありますか?

4

2 に答える 2

2

ソリューションエクスプローラーウィンドウで.mdfを選択します。[プロパティ]ウィンドウで、[出力ディレクトリにコピー]を[新しい場合はコピー]に変更します。

于 2010-06-28T19:56:38.607 に答える
0

データベースファイルを VS studio .SLN にインポートしました

プロジェクト フォルダをよく見てください。プロジェクトのルートに .MDF ファイルがあり、Bin/Debug に別のファイル (作業コピー) があるはずです。(Re)Build ごとに作業コピーが上書きされます。

言い換えれば、それは設計によるものです。

于 2010-06-28T19:24:19.670 に答える