いつもお世話になっております。
WINDOWS XP
ACCESS 2002,2003
を使用しております。
既存のMDBファイルを
MSDEを使用するADPファイルに置き換え、
なおかつ複数端末による運用が可能なようにシステムを変更しております。(元々複数端末で使用しています)
以下の手順でadpファイルを作って運用使用とする場合に疑問があるのですが。
(1)MSDEデータベースに接続したadpファイルを作成。
(2)フォームのレコードソースをMSDEデータベースのテーブル、
テキストボックスのコントロールソースに、そのテーブルに存在するフィールドを設定。
(3)このadpファイルを複数マシンに置き、同時に起動。
(4)作成したフォームで同一のレコードを同時に修正。
この場合に、後のほうで更新した時に
「データの競合」ダイアログが表示され、データを反映するか、先に更新されたほうを優先するか
選択できるますが、
mdbでも同様の運用が可能ですが、この運用を続けるとデータ破損の温床になるようですので控えておりました。
MSDEを使ったadpファイルでも同様のことが言えるのでしょうか?
また、もしこの運用に問題があるとすれば、非連結のテキストボックスを設けて「更新」ボタンでADOによる
更新を行わなければならないのでしょうか。
レコードをリスト形式で表示しているので出来ればそれはさけたいのですが。
どなたかご教授のほど、何卒よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
> MSDEを使ったadpファイルでも同様のことが言えるのでしょうか?
安心してください。
単体のデータファイルをローカルの Access.exe が開く MDB のケースと違い、MSDE は DBMS です。
データベースを管理するシステム。
だから更新などの競合が起こったときに交通整理をしてくれるのです。
ひとつの MDB を複数の端末から開いてデータを更新する場合、ひとつのファイルを複数から更新するわけです。
対して MSDE の場合、データを更新するのはサーバで稼動している MSDE であって、ローカルで起動している Access ではありません。
No.1
- 回答日時:
ACCESSのデータベースは基本的にパーソナルなスタンドアローン型です。
一方、MSDEデータベースは小さいながらもクライアント/サーバー型の SQL-Serverです。ACCESSから MSDEデータベースを利用する方法には次の2つがあります。
(1).ACCESSのデータベース mdbから ODBC経由で、MSDEデータベースにリンクして使う。
これまでのACCESSのデータベースを殆ど変更せずに、MSDEのデータを利用できますがパフォーマンスは低下します。
(2).ACCESSのプロジェクト adpから OLE DB経由で、MSDEデータベースに接続して使う。
従来のACCESSのデータベースにある DAOコードはすべて ADOに変更する必要があります。同じ ACCESSであっても ACCESSプロジェクト adp のデータベースは全く別物だと思って下さい。データベース構築を最初から作り直した方がよいです。MSDEデータベースはクライアント/サーバー型ですので、データの競合を心配する必要はなくなります。
どのような ACCESSのデータベースでクライアント数も分かりませんが、既存のデータベースが簡単なものならば ODBCによるリンク方式の方が良いと思います。本格的なクライアント/サーバー型のアプリケーションを作成するならば、SQL-Server(MSDE)をベースとして再構築することをお勧めします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Excel(エクセル) Excelでデータを抽出するに良い方法 9 2023/02/06 12:42
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Excel(エクセル) Excelの複数人での参照について 2 2022/06/01 13:38
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスで、OLEサーバーも...
-
SQLiteファイルへの同時アクセ...
-
Access2010でリボン等を非表示...
-
階層型データベースとVSAM...
-
学校にデータベースを導入
-
Access2000で作成したデータベ...
-
Microsoft Access2003 共有設定
-
ACCESSのレコードを削除しても...
-
ACCESSのフォームだけを起動す...
-
展開したファイルが一時的に保...
-
ディスク上のサイズの乖離が大...
-
PostgreSQLについて教えてくだ...
-
psqlでFATALエラー
-
ヤフーショッピングでPayPay支...
-
createdbでいきなりつまづいて...
-
oracle spool SJIS → UTF-8
-
SQLCMD コマンドでコマンド待機...
-
更新不要はどういう意味なので...
-
ソケットの異常終了について
-
Windows上のPostgreSQLの完全削...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのデータをアクセスに...
-
アクセスで、OLEサーバーも...
-
ACCESSのフォームだけを起動す...
-
エクセルVBAでcommit,rollback
-
階層型データベースとVSAM...
-
ACCESSのレコードを削除しても...
-
SQLiteファイルへの同時アクセ...
-
SQLのデータベースに韓国語を登...
-
PostgresQLでサーバーを新規追...
-
PostgresQLでサーバーを新規追...
-
SQLPlusでUnicode
-
データベースが開けません
-
C#上でデータベースのコピーを...
-
Access2010でリボン等を非表示...
-
SEの皆様 お知恵拝借願います。
-
ACCESS MSDE フォーム上から...
-
復旧はどのように行えばよいで...
-
1台の専用マシン(DB専用サ...
-
ディスク上のサイズの乖離が大...
-
ヤフーショッピングでPayPay支...
おすすめ情報