- ベストアンサー
MS Access 何となく不安なんですが。。
またしても変な質問なんですが、皆さんの意見をお聞きしたいです。 アクセスを弄り始めて一ヶ月半程ですが、色んな壁にぶかりながら何とか自分のやりたい様な形に出来そうな目処がつきました。 。。。が、自分が作ったこのDBで何度か入力テストを行いテスト結果は上手くいってますが、この先レコード数がどんどん増えていった時に、どこかで破綻しないか心配です。 っと言うのも、幾つかのテーブルで主キーが複数ついており、例えば通常ですと見積テーブル中の見積CDフィールド単体(主テーブル)と明細テーブル中の見積CD(リレーションテーブル)にリレーションを設定し(逆に設定しても)一対多となるのは合点が行くのですが、見積テーブル中の見積CDと仮番CDを複数で選択し明細テーブル中の見積CDと仮番CDに関連付けないと一対多にならない(主テーブルになりえるテーブルが限定されてしまっている)と言うのが、どうも無理やりなやり方ではないのか、また無理なやり方な為にレコード数が何百何千と増えた時に、システムの破綻が起こらないか心配です。 各テーブルの中で複数の主キーが重なり合ったこの様な状態ですと主キー、リレーションなどへの理解の浅さが自分でも認められるだけに『上手くはいっているけど本当にこれでいいのか?!』っと言う不安が尽きません。。 色々と難解な文章で長々書いてしまいましたが、とどのつまり、色々なテストを数回行い上手くいくと言う事は、レコード数がいくら多くなっても大丈夫だと自信を持ってもいいのでしょうか? どうせ駄目になるなら今のうちに直しておきたいし、単にDBが駄目になるだけでなく、それまでのデータも駄目になってしまうことを考え、率直なご意見をお聞きしたいです! 変な質問だと思いますが、何卒宜しくお願いします。m(__)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (1)
関連するQ&A
- リレーションシップで一対多となる条件
今Access2000を使っているのですが、 リレーションを組む際に、一対一と一対多になる違いを教えてください。 リレーションを組みたいのは、 主テーブルの主キー[登録CD]テキスト型 リレーションテーブル [登録CD]テキスト型 このテーブルの主キーはオートナンバーで[NO]としています いつも通りに作ってハズなのですが、 リレーションを組むと自動的に一対一になってしまいます。 リレーションテーブルになるためにフィールド数の制限などがあるのでしょうか? 宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- 2つのaccessテーブルのレコード数を合わせたい
一つは200レコードあるリンクテーブルです。 このリンクテーブルとあるテーブル(Bテーブル)を合体させたいと思いました。 そのあるテーブルは主キーであるIDとチェックボックスの2つのフィールドだけです。 このB]テーブルの主キーとリンクテーブルの主キーとリレーションでつなげました。 しかし、そのBテーブルはレコードが全く無いのでチェックボックスが出て来ません。 リンクテーブルのレコード数分、手動で作成したらチェックボックスと組み合わさります。 これでは、毎回毎回リンクテーブルのレコード数を数えて同じ分だけBテーブルでレコードを作成しなくてはいけません。 自動で同じだけのレコードを作ることはできますでしょうか? VBAでレコード数を数えて・・・・とかするのでしょうか?
- ベストアンサー
- その他MS Office製品
- Accessのリレーションシップ
Access初心者です。 Access2010でデータベースを作っていて、行き詰ってしまいました。 テーブル1にフィールドABCDEFがあって、Aに主キーが付いています。(Aはテキスト型でフィールドサイズ10です。) テーブル2にはフィールドAGHがあり、Aに主キーが付いてます。(Aはテーブル1と同じです。) テーブル3にも同じくフィールドAIJがあり、Aに主キーが付いています。(Aはテーブル1と同じです。) テーブル1のフィールドAを主テーブルとし、テーブル2・3のフィールドAにリレーションを組んでいます。 この時のリレーションシップで参照整合性と連鎖更新と連鎖削除にチェックを入れ、種類が一対一になりました。 その後、テーブル1でレコードを追加しようとすると、「テーブル'2'にリレーションシップが設定されたレコードが必要なので、レコードの追加や変更を行うことができません。」と出ます。 これを解決する方法はどうするのか、お教えお願いします。 分かりにくい説明ですいません。
- ベストアンサー
- その他MS Office製品
- Access2002 参照整合性について
テーブル間にリレーションシップを設定する場合、リレーションテーブル側に主テーブルにないレコードがあると参照整合性を設定できないにも関わらず、「結合の種類」で「3」(リレーションテーブル側の全レコードと主テーブル側の同じ結合フィールドのレコードだけを含める)を選べるのは何故でしょうか。 参照整合性を設定できた時点で、リレーションテーブル側には主テーブルにないレコードは無いということだと思うのですが・・・。 よくわからなくなってしまいました。 お答え、よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- 一対一のテーブル分割(ACCESS2003)
ACCESS2003にて、フィールド数が上限の255、レコード数がおよそ1万件の商品マスタテーブルを作ったとします。入力必須フィールドは主キーである商品ID、あと商品名ぐらいで、あとは商品によって入力したりしなかったりするフィールドで、テーブルを開くと空欄が非常に多く目立ついわゆるスカスカの状態になっているとします。そこで商品マスタテーブルを数個に分割(商品の価格情報、商品の品質情報等々)し、商品IDを主キーにもたせ一対一の外部結合でつなげて、密度の濃い(?)テーブルを複数作ったほうが、ファイルサイズの縮小やクエリ等のパフォーマンス向上にメリットがあるのでしょうか?(一対一の結合はあまり使用しないのが一般的なようですが、このような場合使用すべきでしょうか?)教えて頂きたくお願いいたします。
- 締切済み
- オフィス系ソフト
- アクセスについて教えてください。
アクセス2002 XP使用 Aテーブル ID 氏名 電話番号 住所 などの個人情報入力 Bテーブル ID (リレーションするためのID主キー) 管理ID 購入商品 上記のように今作っているのですが、AテーブルIDとBテーブルは1対多でのリレーションしてます。 フォームで帳票形式で見たとき、 管理NOの数だけレコード表示されるのはいいのですが、 AテーブルID 1に対し、管理IDが111と三件分あるとして、(勿論BテーブルIDには123となってます) AテーブルID1にひとつ、受付NOを追加して、 ID 受付NO 管理ID 1 1 1 1 2 1 1 3 1 2 1 2 2 2 2 3 1 3 見たいに受付NOがIDごとに123。。。と自動入力されル洋にしたいのですがどのようにすればできますか?素人なので説明もうまくできなくわけが変わらないかもしれませんがおしえてください。よろしくお願いします。
- 締切済み
- その他(データベース)
- ACCESSのリレーションが切れてしまいました
素人で甚だ恐縮ではございますが、社内システムのACCESS2003のデータベースでリレーション定義が無くなってしまい、アプリで削除していないにも拘わらず主たるテーブルのレコードの各項目に"deleted"或いは"#deleted"が入ってしまいました。 リカバリーは、「データベースの最適化/修復」を行い、リレーションを定義していた先のテーブル内のレコードを削除し、再度リレーション定義し再登録にて回復しました。 リレーションが切れる(無くなってしまう)原因がわかりません。 どういったケースで発生しうるかご教示頂ければと存じます。
- 締切済み
- その他(データベース)
- 未定義になるのは主キーじゃないのが原因?
二つのテーブルを一対多のリレーションシップで繋ぐとき、 一になる方は主キーじゃないと、一対多にならなかったり参照整合性はできないのでしょうか? 主キーではないテーブル1のフィールド(一)と、(多)のテーブル2のフィールドでリレーションを組もうと思ってるのですが、 リレーションシップの種類が未定義になってしまいます。 これは、1になる方のテーブル1が主キーじゃないのが原因なのでしょうか? テーブル1のこのフィールドは、重複することはありませんが、空白も入る為、主キーにできないし、 主キーはほかのフィールドで使っています。
- ベストアンサー
- その他MS Office製品
- Access 一対一リレーションの編集
こんにちは 現在、Accessと他のソフトとの連携をするために奮闘しています。。。知恵をお貸下さい。 Accessには元々受注テーブルがあります。 主キーID:オートナンバー 受注日:日付型 納期:日付型 図番:テキスト型 数量:数値 単価:数値 とあり、データがすでに存在しています。他のソフトへエクスポートを継続的に行うにあたって 新規にテーブルを作成し、一対一リレーションをしようとしています。 新規テーブルは 主キーID:オートナンバー 取引先コード:テキスト型 担当者コート:テキスト型 区分コード:テキスト型 実出荷日:日付型 エクスポート状況:数値 そして、受注テーブルと新規テーブルのIDを一対一でリレーションしクエリを作成し、エクスポートしようと思っています。 その際、新規テーブルの方はデータが空なのでクエリ結果が得られないと思うのですが。。。 どうやって既存の受注テーブルと一つ一つのレコードを繋げる事が出来ますか❓ 編集方法をどなたか教えて下さい。 素人ですみません。
- ベストアンサー
- オフィス系ソフト
- Access フォームで複数テーブルの同時入力
フィールド項目が多い為に複数のテーブルに分けて 同じフィールド名 [品番] で1対1でリレーションを組んでいます。 フォームの新規レコードで品番を入力の時に 各テーブルの品番に入力するのにはどうしたらいいでしょうか? 後々のことを考えると1つのテーブルにまとめたほうがいのでしょうか? フィールドが300ぐらいあるのでテーブルに分けたほうがわかりやすいので 現在は10テーブルに分けています。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
早速のご回答、ありがとうございます! 実はその問題の自営業だったりするわけです。。。 今まで手作業でこなしていた事を、すべてパソコンに置き換える事で、いろんな面のコストダウンを図ろうとしています。ありきたりですが。。 エクセルで名簿を作るのがやっとのレベルでありながら、アクセスなんて無謀だなっとは思うのですが、やらねばならぬ状況になってしまったので。。 会社内のことをしっかり固め、安心して外へ打って出たいのですが、どうも心配性な性格な為、一応目処がついたと言えども、何か落ち着かなくて。。 バックアップはしっかりとる為に、先日記憶装置も買っておきました。 やはりバックアップは大切ですよね。肝に銘じていこうと思います! それと、なんだかとても読み辛い文章になってしまったことをお詫びします。またこのような文章であるのにご回答を下さって本当にありがとうございました。大感謝しております! もう少しほかの皆さんのご意見も伺いたいと思うので、締め切らないでこのまま置いておこうと思います。
補足
それと書き忘れてしまいましたが、実務でメインで使うのが社長で、この社長がまた「ダブルクリックって何?」というレベルですので、余計に心配しているわけです。。。 出るのはため息ばかりです。。(汗