|
分類:[データベース全般]
SQL Server 2016を使用し、複数のパソコンから1つのデータベースへデータ書き込みを行うシステムを開発しています。
アプリケーションの開発環境は Visual Studio Express 2017 for Windows Desktop 言語はC#、.NET Framework 4.7.2を使用して Windowsフォームアプリケーションを開発しています。
アプリケーションからの1回の書き込み時、複数テーブルにデータを書きこみます。(INSERTでレコード追加 または UPDATEで既存のレコード更新) 不整合を防ぐことを目的とし、トランザクション機構を入れたいのですが 「テーブルAには書きこめたが、他のテーブルには書き込み失敗した」というケースは具体的にどのようなものが考えられるでしょうか? なお、データベースはサーバに1つだけ作成し、その中に複数テーブルを作成しています。(データベースをまたがった書き込みは行わない)
当方で考えるのは、以下のケースです。 他にもありましたら教えていただけないでしょうか?
データベースを配置しているサーバのディスク破損 データベース書き込みエラー(型が異なる、サイズが異なるなど。 アプリケーション側でもバリデーションチェックはするが、それでも書き込みエラーとなる可能性を考慮して、保険)
|