- ベストアンサー
ACCESSの「s_GUID」等の意味
- ACCESSファイルに含まれる「s_GUID」、「s_Lineage」、および「s_Generation」というフィールドの意味を教えてください。
- これらのフィールドの意味を理解せずにテーブルを変更することで不具合が発生する可能性があります。
- ACCESS初心者のため、フィールドの意味について教示をお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
Access2013ですか。。。 Access2013からレプリケーションのオプションは削除されています。 http://technet.microsoft.com/ja-jp/library/cc178954%28v=office.15%29.aspx 一応mdbファイルを作成して試してみました。 レプリカが有効な状態のmdbファイルでは 『現在のバージョンのMicrosoft Access では、レプリケートされたデータベースはサポートされていません。このデータベースを使用するには、以前のバージョンの Microsoft Access で開いてください。』 となり、開くことさえ出来ませんでした。 また、アイコンの形からも既にレプリカとしては機能していないものと考えられます。 こちらの手順で残骸を取り除いてください。 http://office.microsoft.com/ja-jp/access-help/HP005216790.aspx 当方で確認した限りでは s_ColLineage s_Generation s_GUID s_Lineage の4フィールドは残骸です。 ※念のためにファイルのバックアップコピーをとってからに!
その他の回答 (4)
- NotFound404
- ベストアンサー率70% (288/408)
レプリケーションで運用していたかと思います。 遠隔地でも同じmdbファイルを使用したい場合で ネットワークが遅かったり、接続されていない場合に レプリカ(複製)を作成します。 それぞれのファイルで変更・新規作成などが行われるわけですので 定期的にレプリカマスターと同期をとる必要があります。 その際に質問中の謎のテーブル中のフィールドデータを参照しつつ同期をとります。 また、システムテーブルにも幾つか追加されます。 現状のテーブルのアイコンはどうなっていますか? 黄色い丸の中に左右の矢印の形のが付いていれば まだレプリカとして機能するようになっていると考えられます。 いま使えるAccessのバージョンは何がありますか? とりあえず、ここまで。
補足
お世話になっております。 ACCESS2013を使っていますが、当該のテーブルのアイコンは 普通のアイコンで、黄色い丸の中に左右の矢印が付いているような アイコンではありません。よろしくお願いします。
- tamu1129
- ベストアンサー率58% (1295/2223)
>このレプリケーションIDの意味を教えてください これは、その前のオートナンバー型と合わせて覚えてください オートナンバー型は数値型のフィールドの1つです 数値型にはこのフィールドが使うサイズも指定するのです (s_Generationも数値型のフィールドなので数値型/長整数型という形でそのフィールドが使うフィールドサイズも指定されていますよね) オートナンバー型は通常は長整数型使うのですが、データベースをレプリケーションしている状態で使用している場合には、データベース同士を定期的にチェックしてオートナンバー型の数値がレプリケーションしているデータベースで重複してしまわないようにして使用する場合に、長整数型ではなくレプリケーションIDとして指定します あくまで普通は長整数型、それをレプリケーションIDにしているって事はなぜなのかは、作った人に聞いてください (データベースをレプリケーションさせて使っているからそうしたのか、作った人間も意味がわからずそうしたのか) >Oleオブジェクト型 簡単に言えば、Access内に無いデータを参照しているって事です Windowsの機能にOLEオブジェクトという考え方があって、OLE対応のソフト間でお互いにデータやり取りして利用が出来る仕組みです Accessの場合、ここには写真などの画像ファイルなどが表示されるようにする場合、使う事が多いです
お礼
お世話になっております。 ありがとうございます。 作成者は退職しており、確認できない状況です。 現状では、このファイルをレプリケーションして使うような仕組みになって いません。
- tamu1129
- ベストアンサー率58% (1295/2223)
>このファイルにあるテーブルを変更 テーブルにフィールド追加したいって話なら、同じフィールド名にならないように何か適当に名前付けて、フィールド追加してください 後から自分が参照する時にわかりやすい名前にした方が良いでしょうけどね フィールド名は漢字やひらがななんかも使えますが、クエリー作成する時に英数字だけのフィールド名にしておいた方が入力する際には面倒が無いでしょう ACCESSについては初心者という事なので、バックアップはきちんと取っておいてから色々な事をしましょう Accessを閉じて、***.MDB(***部分は該当するデータベースファイルの名前です)となっているファイルをUSBメモリなり、HDDなりにコピーしてやれば良いだけですから
- tamu1129
- ベストアンサー率58% (1295/2223)
それは、そのテーブルを作成した人間に聞いてください フィールド名はなんでも良いんですよ 作った人間が、そのフィールド名を s_GUID や s_Lineage と名前付けしただけの話です その人間が作る時に、1つ目のフィールドだから 111 2つ目のフィールドだから 222って名前にしていたら、s_GUIDは 111 s_Lineageは 222というフィールド名になっていました フィールド名は後から変更する事も出来ます が、現在クエリーなどが作成済みで、それらのクエリーが ○○テーブルのs_GUIDフィールドの値を抜き出すような構文になっていれば、s_GUIDというフィールド名を 111に変えてしまえば、s_GUIDというフィールドは無くなってしまうので、作成したクエリーが正常に動作しなくなってしまいます フィールド名は ○○テーブルの**という名前のフィールドなので、××テーブルの**フィールドとなれば、フィールド名がまったく同じでも、別な場所のデータとして扱われます 既存の部分に手を入れず、新しいテーブル追加するって事をやろうとしているなら、既存テーブルと同じ名前のテーブルを作らなければ、何してもらっても今までのシステムには関係ありません
補足
お世話になっております。 早速のご連絡ありがとうござざいます。 テーブルのフィールド名については理解できました。 フィールドの属性をチェックしたところ、以下のようになっていました。 s_GUID:オートナンバー型/レプリケーションID型 s_Generation:数値型/長整数型 s_Lineage:Oleオブジェクト型 このテーブルにデータを追加すると、 ・s_GUIDフィールドに数字とアルファベットのコードが自動的に入ります。 →このレプリケーションIDの意味を教えてください。 ・s_Lineageフィールドは文字や数値が入力できません(既に入力されているデータ には「ロングバイナリーデータ」と表示されています。 →このOleオブジェクト型の意味を教えてください。 よろしくお願いします。
お礼
お世話になっております。 ご丁寧な説明ありがとうございました。 助かりました。