アクセス2007でのデータベース操作について

このQ&Aのポイント
  • アクセス2007を使用して本の在庫管理のデータベースを作成しました。しかし、レコード削除時に意図しない削除が発生しました。削除されたID2を復元する方法はあるのでしょうか?また、削除後に再びID2を追加する方法も知りたいです。
  • アクセス2007を使用して本の在庫管理のデータベースを作成しましたが、レコード削除時に問題が発生しました。削除されたID2を復元する方法や、再びID2を追加する方法を教えてください。
  • アクセス2007を使用して本の在庫管理のデータベースを作成し、レコード削除時に予期せぬ問題が発生しました。削除されたID2を復元する方法や、再びID2を追加する方法を教えてください。
回答を見る
  • ベストアンサー

私は、アクセス2007を使っています。

私は、アクセス2007を使っています。 そこで本の在庫管理のデータベースを作り テーブルに10件ばかりテーターを入力しました。 そこで、2番目のレコードを削除したら、ID2が削除されました。 私は入力した10件のデーターが全て下から上へくりあがると思ってました。 つまり、 ID3のレコードのデーターが繰り上がってID2のレコードに入るとおもって ID2は削除されないとおもってました。 初めは、ID1 ID2 ID3 ID4 ID5 ID6 ID7 ID8 ID9 ID10 レコード削除後  ID1  ID3 ID4 ID5 ID6 ID7 ID8 ID9 ID10 レコード削除とともに!ID2も削除されました。 削除されたID2を戻す方法はないでしょうか? また、新たに ID1 「削除された箇所  」 ID3 ID4の  「 削除された箇所   」に 再び、ID2をID注入し新たな、レコードを作成したいと思います。 作れますでしょうか? もし できるのなら ID2の注入の方法を教えてください よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

レコード単位で削除するとそのレコードに 含まれるすべてのフィールドが削除されます。 IDのフィールドがオートナンバーや 自作関数によって番号を取得していると 欠番が生じます。オートナンバーの場合は 普通では欠番を埋めることはできません。 欠番を埋めるのはちょっとした工夫が 必要です。自作関数の場合はいくらでも 埋め戻しができますが。 以下にオートナンバーの欠番を埋める 方法があります。 http://oshiete1.watch.impress.co.jp/qa5737015.html

kensin9
質問者

お礼

ありがとうございました。解決しますた。

その他の回答 (1)

  • yu_kun
  • ベストアンサー率28% (11/39)
回答No.1

こんにちは。 >私は入力した10件のデーターが全て下から上へくりあがると思ってました。 アクセス2007は使用していませんが、一般的なデータベースでは、 繰り上がるような事はありません。 レコード削除ですので、至極当然の結果です。 "ID2"はフィールドの値のようですが、新たに"ID2"の値を持つレコード を作成すれば解決かと思います。

kensin9
質問者

お礼

ありがとうございました。 解決しました。

関連するQ&A

  • access2003のエラーについて!!

    access2003のエラーについて!! ACCESSでデータを入力中に突然テーブルのレコードが「レコード削除された」のメッセージが表示され、レコードが消えてしまいました。 また、フォームでは、レコードが表示されていないにもかかわらず、データが表示されます。 新規にレコードを作製しようとしても「レコードは削除されています」のメッセージが表示され、 作成できません。 この状態を、元に戻す方法はないでしょうか?

  • Access2010で、名簿を作って使っています

    Access2010で、名簿を作って使っているのですが。 Access2010で、名簿を作って使っているのですが、 普通の単票形式で、フォームを作って、そこで新規登録したり閲覧したりしています。 その人の顔写真を1データごとに1枚ずつ載せているのですが、 970件を超えたあたりで、いきなりファイルが壊れます。 先に写真以外のデータ(すべて文字)は入力を1000件以上しても、普通に動作しました。 最後に写真だけ貼る作業をしたのですが、970件を超えたあたりで必ず壊れるので、写真が関係あるのかなあ、と勝手に思いまして…。 症状としては、写真を貼って「次のレコード」の繰り返しで貼る作業をしていたのですが、 必ず970件を超えたあたりで「次のレコード」ボタンを押したときに「指定したレコードに移動できません。」と表示されます。 そうなると、もうレコードを移動できません。 仕方がないので閉じようとすると「データベース"を開くことができません。アプリケーションで認識できないデータベースであるか、またはファイルが破損しています。」と出て、 「このレコードを保存できません。」と出ます。 「はい」を押すと強制的に閉じれるのですが、もう一度そのファイルを開くと 「レコードは削除されています。」と出ます。 そしてフォームは開けません。 開こうとすると「レコードは削除されています。」と出ます。 一番メインのテーブルを開いて中を見てみると、 写真が貼れなくなった人(指定したレコードに移動できません。)と表示された時の人のデータが 全項目「#Deleted」になっています。 この症状に身に覚えがある方、 解決方法を知っていらっしゃる方、 おりましたらぜひ、ご教授ください…。 よろしくお願いします。

  • 別のACCESSデータベースのテーブルのレコードを追加したいのです

    別のACCESSデータベースのテーブルのレコードを追加したいのです 同じ内容のデータベースが二つあります データベース1とデータベース2を其々別の人がデータを入力しています データベース1にデータベース2のテーブルで T_データT_データ明細の二つのレコードを追加したいのですがどの様にすればよいでしょうか ご指導をお願いいたします。

  • アクセスのオートナンバーが飛びすぎに

    過去の質問検索で、うまく見つけられませんでしたので質問させてください。 【状況】 ・10000件ほどレコードがあります。 ・レコードの項目にはオートナンバーがふられていて、それが主キーになっております。 ・データベースは私が作ったものではありません ・しかも私はアクセス初心者で、最初から作り直せるようなものではありません ・データベースはアクセス2000です 【困っている事】 具体的な数字を例にあげて説明します。 今までは入力すると10000件目の次は10001番と当然番号がついていたのですが、先週に「ファイルのインポート」機能を使って300件追加して、本日入力を再開したら、本来は10301番と番号をふられるハズが80001435番、みたいな大幅に飛んだ番号を振るようになりました。 【どう解決したいか】 既存の今までのデータは10300件までキレイに番号をふられて揃っている為、次の入力を10301から始まるようにしたいです。 ※補足必要であれば聞いてください

  • アクセス作成について

     アクセスについて質問します。  フォームで入力する場合で、例えばテーブルのレコードを100までとし、101を超えた場合またレコード1にデータを入力することは可能でしょうか。 テーブル フィールド1 フィールド2  1       6  2       8   .      .   .      . 100       55 フィールド1は固定し、フィールド2にデータを入力していき101番目にデータを入力する時はまた1行目の6を上書きしてデータを更新していくようなことは可能でしょうか。(もちろんフィールド1、フィールド2を別テーブルとしクエリーを活用することでもok) アクセス初心者です。よろしくおねがいします。

  • ACCESS2000のオートナンバー型について

    OSはWIN98です。ACCESS2000です。 ACCESS2000にてテーブルの主キーのフィールド(追番)に オートナンバー型を設定しました。 テーブルにデータを仮に100書きこんだとします。 その後に、その100個のデータを削除します。 そして、削除された後の最初のレコードにデータを 書きこもうとすると追番のフィールドが "101" に なってしまいます。新たに書きこむ時に追番を "1" にすることはできないでしょうか? 皆様よろしくお願いします。

  • Access テーブルをデータシートビューで開くことが出来ませんというメッセージが出ます

    Accessで単純な入力をさせていたところ、「急に『レコードが削除されました』というメッセージが出たんですけど・・」と担当者が言ってきました。確認したところ、マスターのテーブルも『レコードが削除されました』『テーブルをデータシートビューで開くことが出来ません』とメッセージがでて、関連するクエリなどすべて『レコードが削除されました』とエラーが出ます。入力していた担当者は「変なことはしてません」と言っていますが。入力していた作業内容はもともとあるデータから該当のデータを検索して追記するだけの単純な作業です。Access2000でWinXPを使っています。本当にデータは削除されているのでしょうか?また削除された場合、なんとかデータを復活させる方法はあるのでしょうか?私が操作していないので、どういう経過でこうなったかわからず、ほとほと困っています。考えられる方法があれば教えて下さいませ。よろしくお願いいたします。

  • access IDの振り直しについて

    皆さん、明けましておめでとうございます。今年もいろいろとお世話になりますm(_ _)m さて、accessに挑戦しているところですが、データをいろいろいじくっているうちに、オートナンバー型のIDが不整列となってしまいました。そこで、いったん「デザイン」からIDを削除し、再び「行の挿入」でIDを作成したところ、今度はまたIDが別の形で(飛び番=例えば、100の次に1000が来て、1100の次に101が来るというような)不整列となりました。 テーブルのフィールドには「No」というのを設けてあり、これはデータのレコード番号なのですが、それとIDが一致するようにするつもりでした。 このような場合、IDの「振り直し」はどのようにやれば出来るのでしょうか? もう一つお尋ねです。最終「No」とレコード数は一致するはずなのですが、レコードが1個足りません。このような場合、何番のレコード(No)が抜けているのか知るには、どのようにすればよろしいでしょうか? access初心者ですので、いろんなところでつまづいてしまいます。どうかご教示のほどよろしくお願いしますm(_ _)m xp+office2003です。

  • アクセスでのデータ管理について(長文です。)

    アクセス初心者です。 これからデータの入力、管理、帳票をアクセスで構築しようと思っているのですが、アクセスはデータを入力した時点でデータが保存されてしまうので過去のデータが残りません。またデータの変更及び共有をうまくやりたいのですがよい方法がわかりません。 今回構築したいデータベースは、 1.過去の記録がすぐわかるようにしたい。(更新前のデータがわかるようにしたい。) 2.データの変更及び共有を簡略化したい。(A社で変更したデータをB社のデータベースにいれこみたい。) 【データベースの概略イメージ】  A社      B社 データベース1 データベース2(1と同じもの) テーブル1 → テーブル1 テーブル2 → テーブル2 テーブル3 → テーブル3 クエリ1    クエリ1 クエリ2    クエリ2 フォーム1   フォーム1 フォーム2   フォーム2 *リレーションあり *A社でテーブル1の内容を変更して、B社のテーブル1を新しいものに置き換えたい。 (本を読むとリレーションが崩れると書いてありました。) *B社で変更してA社に戻すこともある。 テーブル1 項目 ID 100 住所 あああ 氏名 △△様 電話番号 111-1111 *例えば、ID100のデータの氏名を変更するとき、変更前がどうだったかわかるようにしたい。(1月時点では△△様、2月時点では□□様とか) 誰かアクセスの操作方法に詳しい方がおられましたら、よい方法又はアクセスに関する詳しい本とかサイト等教えて下さい。よろしくお願いいたします。

  • access テーブル内のレコードの編集を不可に。

    よろしくお願いします。 仕様環境(access2003,access2007) access データベースを作っています。 データベース内にテーブルがいくつかあるのですが、 他人に勝手に変更(レコードの追加や削除)してもらいたくない テーブルがあります。 (どんどん件数が足される仕様のものではないので) 何かいい方法はありますでしょうか? データベースウィンドウ全体(2007だとナビゲーションウィンドウ)を 隠す方法は知ってますが、違う方法を考えています。 ちなみにリンクテーブルは使っていません。 教えてください、よろしくお願いします。