アプリチップ集 プログラミング

AccessのデータをSQL Serve に移行したらデータの削除や更新が出来なくなった

投稿日:

Accessで作ったアプリケーションをスタンドアロンで動かしていたんですが、他のPCでも利用したいと言う要望があり、データをSQL Serverに移行する事になりました。

データの移行はSQL Server EnterPrice Manager のデータのインポート機能を使えば簡単に出来ちゃうので、楽勝と思ってたんです。

作業も20分ぐらいで終わり、「よしよし!検証もらくちんだぜ」とAccessのテーブルをODBC経由のリンクテーブルに貼りなしてこれでほとんど終わったつもりが・・

登録画面の操作を始めると、登録キャンセルで排他制御による失敗みたいなエラーが発生

「is not updatable because the modification affects multiple base tables. (#4405)". 」

ありゃ?

テーブル開いてみると登録キャンセルしたはずのデータがいる。

でもって削除しようとすると「他のユーザーが同じデータに対して同時に変更を試みているので、プロセスが停止しました。」

ふーんなんでだろうとグーグル先生に聞いてみたら、松さんのブログに答えが書いてありました。

Accessの「Yes/No型」がSQL Server ではbit型になり。これがnullの時におこる事象のようです。

SQL Server EnterPrice Managerで該当データのフィールドのプロパティーで既定を0(false)にセットする事で対処できました。 

-アプリチップ集, プログラミング
-, ,

Copyright© セバのプチネタ , 2021 All Rights Reserved.