[前][次][番号順一覧][スレッド一覧]

mysql:13094

From: Jun Shirasawa <Jun Shirasawa <jshira@xxxxxxxxxx>>
Date: Thu, 15 Jun 2006 21:34:30 +0900 (JST)
Subject: [mysql 13094] Re: はじめまして。データベース設計についての質問です

白澤です。

以下、c-atwork <ml@xxxxxxxxxx>さんの
「[mysql 13093] Re: はじめまして。データベース設計についての質問です」
 (Thu, 15 Jun 2006 21:06:54 +0900) より一部引用:

> 最初それを考えたのですが、手作業でいじるときはいいのですが、
> 内容の書き換えも管理モードのようなページを設けて、管理ユー
> ザに作業させたいのです。
> 
> たとえば、管理画面で
> 
> 商品1 ×
> 商品2 ○
> 商品3 ○
> 商品4 ×
> 商品5 ○
> 商品6 ×
> (顧客IDはhidden)
> 
> というようなフォームを作ってあげたとして(○×は実際はチェッ
> クボックス)データベースの登録時はどのようにしようかな?と
> か思ったしだいです。
> 
> あ・・・・該当する顧客IDのフィールドをすべて削除した後に、
> 新しくインサートすればいいのですかね?すみません、すでに悩
> んでいるもので、簡単なことなんだと思うのですがモヤモヤして
> しまっています。

商品1を顧客1が取り扱えるならそのレコードをインサートしてお
けば良いし、必要がなくなったらそのレコードを削除するだけで済
むと思うのですが。

新規顧客の場合、全ての商品を一覧で見せて選択させ、有効にした
い商品だけその顧客のIDと紐づけてインサートする。

管理画面で、「紐づいていない」状態を見せたいなら、「関連」テー
ブルと「商品」テーブルを OUTER JOIN すれば良いんじゃないでしょ
うか?紐づいてない商品については顧客IDの所が NULL になります
ので、表示上の制御はそれで出来ますよね?もちろん、顧客に紐づ
いた商品だけを絞り込む時は単なる直積で良いわけですが。

いかがでしょうか?

----
 Best regards,
   SHIRASAWA, Jun. <jshira@xxxxxxxxxx>

[前][次][番号順一覧][スレッド一覧]

     13091 2006-06-15 20:39 [c-atwork <ml@xxxxxxx] はじめまして。データベース設計についての質問です
     13092 2006-06-15 20:50 ┗[Jun Shirasawa <jshir]                                       
     13093 2006-06-15 21:06  ┗[c-atwork <ml@xxxxxxx]                                     
->   13094 2006-06-15 21:34   ┗[Jun Shirasawa <jshir]                                   
     13095 2006-06-15 21:51    ┣[Jun Shirasawa <jshir]                                 
     13096 2006-06-15 21:52    ┗[c-atwork <ml@xxxxxxx]