0

私は ASP.NET と SQL Server にかなり慣れていないので、できる限り詳細なサポートを提供してください。本当に感謝しています。これが私の状況です:

ASP.NET と SQL Server 2012 Express を使用して Web サイトの登録システムを行っています。

そのため、ユーザー登録時には、まずアカウント情報(名前、住所、電話番号、電子メール、パスワードなど) を入力し、次に会社情報(勤務先 (会社名、会社の業界、ウェブサイト、説明...)。データベースには、ユーザー会社の2つのテーブルがあります

問題は、登録フォームの必須フィールドをすべて入力して [送信] ボタンをクリックしたときです。2 つのテーブルにデータが正常に挿入されたかどうかを確認するにはどうすればよいですか。これは問題になるでしょう。クエリの挿入が失敗した場合に、SQL Server でそれをチェックしたり、プロセスを元に戻したりする方法があるかどうかはわかりません。

これが皆さんにとって意味があるかどうかはわかりません。私の質問が理解できない場合は、私に尋ねてください。

ありがとうございました!

4

1 に答える 1

2

コードがなければ、これに答えるのは難しいです。

.net では、Try{} catch{}ブロックを使用してエラーを処理し、それらに対処できます。

より良いアプローチは、ユーザーと会社を 1 つのトランザクションでコミットすることです。これは、データ アクセス アプローチに依存します。たとえば、Linq2Sql では、1 つの SubmitChanges() に 2 つの挿入を含める必要があります。または、 http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspxで自分で行うTransactionScope

更新:リンクの備考を読んでください:

System.Transactions インフラストラクチャは、Transaction クラスに基づく明示的なプログラミング モデルと、トランザクションがインフラストラクチャによって自動的に管理される TransactionScope クラスを使用した暗黙的なプログラミング モデルの両方を提供します。

于 2013-07-21T18:25:07.893 に答える