はじめまして、urizakaと申します。
 さて、さっそく質問なのですが、VisioでDB作成の際に使うER図を書こうと
思っているのですが、フィールドとフィールドの関連付けの方法(あるマスター
テーブルで使っているプリマリーキーのフィールドを別のマスターテーブルの
フィールドへ関連付ける方法)について教えていただけないでしょうか?。
 非常に基本的なことで恐縮ですが、すみませんが教えてください。よろしく
お願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

画面左側の、図の部品(エンティティなどの部品が置いてある部分)に、リレーションというのがあると思いますが、これを図面にドラッグしてきて、その両端を関連付けたいテーブル接続してやれば、関連が出来上がります。


ただし、この場合、適当なフィールド同士を関連付けますので、関連付けるフィールドを変更したいときは、リレーションの線をダブルクリックすれば、設定画面が出ますので、関連付けたいフィールドを左右でそれぞれ選び、関連させるためのボタンをクリックすれば、関連付けは変更できます。

Visioは、参考にする文献が少なくて困りますね。私も苦労しています。(特に各テンプレートに対する資料が少なくて・・・)
    • good
    • 0
この回答へのお礼

urizakaです、回答ありがとうございます。
しかしながら、教えていただいたとおりにしてみたのですが、リレーション
の線をダブルクリックしてもリレーションの線の真中に四角いボックスが
表示されるだけで、設定画面が表示されません。これは、私が使っている
バージョンの問題でしょうか?もしご存知でしたら教えてください。
 ちなみに、私の使っているVisioは5.0で、どうしたことか2000に
バージョンアップができないもので・・・あと、ステンシルはIDEF1X ERD
です。

お礼日時:2001/05/11 10:21

補足ありがとうございます。



Visio5.0ですか・・・

すみません。経験がありません。
ただ、そのころのVisioは、もしかすると、単なる図だけでフィールド同士の関連までは表せないかもしれません。(データベースとの連携ができるのは、Visio5.0の何とかというバージョンからだったような気がします)

あいまいな回答で申し訳ありません
    • good
    • 0
この回答へのお礼

ええと、やり方は分かりました。
「関係」を右クリックし、「関係定義」-「一般タグ」で外来キーを選択し
外来先のキーの名前を入力します。そして、「マクロ」-「データベース」-
「外来キーの更新」を行います。
 これで、テーブルのフィールド同士の関連ができます。
 しかし、私が見つけた方法ではその関係はひとつのフィールドに対して、あくまで相手のテーブルに1つの外来キーが定義できるだけなので、一度この質問を閉めて別の質問で、この件についてお聞きしたいと思います。どうもありがとうございました。

お礼日時:2001/05/11 16:24

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QテーブルのフィールドにNot null制約を付けたい

お世話になります。

既存テーブルにフィールドを追加する方法は
わかっているのですが、その追加したフィールドに
not null制約を付けるにはどのようなコマンドを
実行する必要があるのでしょうか。

↓のコマンドには制約をつけるオプションはないですよね。。
ALTER TABLE テーブル名 ADD (カラム名 カラム定義)

よろしくお願いします。

Aベストアンサー

ALTER TABLE table_nameMODIFY (field_name NOT NULL)

でできるはずです。

QAccessのテーブルフィールド属性の抽出

Access2003で作成したデータベースで、各フィールド(IDや名前、住所など)の属性(数値型といったデータ型やさらなる詳細(「標準」「ルックアップ」で設定できる内容)、長整数型、値要求「いいえ」など)を一度に抽出することはできないでしょうか。

よろしくお願いします。

Aベストアンサー

抽出というのがどういう形を希望しておられるのか分かりませんが
[ツール][解析][データベース構造の解析]で
フール止め意、データ型、サイズ、プロパティー、インデックス名、フィールド、プロパティーなどをレポートに出すことならできます

QAccessのテーブル内のフィールド数

教えて下さい。

Access2003(2007)では、テーブル内のフィールド数が最大255となっていますが最大フィールド数255以上ある、Accessと同じようなものはあるのでしょうか?(OpenofficeのBase等)

他DBからテーブルをリンクテーブルで貼り付けているのですがフィールド数が255以上あり取り込み先のAccessではフィールド数をすべて表示できない状態です。

よろしくお願いします。

Aベストアンサー

MySQLは実質、項目数の制限がありません(サイズによる制限はあるが)。

ACCESSで255項目以上を扱う場合はテーブルを分けるしかないと思います。それに項目数が無制限だとしても1テーブルに100項目程度くらいにしたほうがいいですね。そのほうが管理しやすいと思います。

QAccessでテーブルの文字列フィールドを連結する

次のようなフィールドが2列のデータがあります。

1:りんご
1:みかん
1:バナナ
2:みかん
2:ぶどう
3:りんご
3:バナナ

それを

1:りんご、みかん、バナナ
2:みかん、ぶどう
3:りんご、バナナ

とクエリーでまとめたいのですが
どのようにしたらよろしいでしょうか?

Aベストアンサー

SQLだけでは難しいですね。
パフォーマンスは保証できませんが、オリジナル関数を作るしかないでしょう。

FruitTBL

ID FName
1 りんご
1 みかん
1 バナナ
2 みかん
2 ぶどう
3 りんご
3 バナナ

とすると、


標準モジュールに
Option Compare Database
Option Explicit


Public Function GetNames(lngID As Long, strDel As String) As String
Dim rs As New ADODB.Recordset
Dim strSQL As String
Dim strRet As String


strSQL = "SELECT FName FROM FruitTBL WHERE ID = " & CStr(lngID)
rs.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic

strRet = ""
Do Until rs.EOF
strRet = strRet & rs.Fields(0).Value & strDel
rs.MoveNext
Loop

strRet = Left(strRet, Len(strRet) - Len(strDel))
rs.Close
Set rs = Nothing

GetNames = strRet

End Function


クエリーで

SELECT ID, GetNames(ID,",") AS Name
FROM FruitTBL
GROUP BY ID



こんなのでいかがでしょうか?
意味があるかは分かりませんが、テーブル名などもパラメータに
出来なくもないので工夫してください。

バージョンが分からなかったので適当ですが…。

SQLだけでは難しいですね。
パフォーマンスは保証できませんが、オリジナル関数を作るしかないでしょう。

FruitTBL

ID FName
1 りんご
1 みかん
1 バナナ
2 みかん
2 ぶどう
3 りんご
3 バナナ

とすると、


標準モジュールに
Option Compare Database
Option Explicit


Public Function GetNames(lngID As Long, strDel As String) As String
Dim rs As New ADODB.Recordset
Dim strSQL As String
Dim strRet As String


strSQL = "SELECT FName FROM ...続きを読む

Qエクセル・ピボットテーブルのフィールドリストが出ない

こんにちは。
XPで Office2003を使っています。
EXCELLのピボットテーブル作成時に、どうしてもフィールドリストが表示されないのです。
ピボットツールを表示して、フィールドリストを「表示する」に設定しても、やはり出ません。たいへん困っております。教えてください。

Aベストアンサー

ピボットテーブルのフィールドリストが画面外に出てしまっているのではないでしょうか。
タスクバーの高さを2段にしてから元に戻すとか、ディスプレイの解像度を変えてから元に戻すと出てくるかもしれません。


人気Q&Aランキング

おすすめ情報