mysql:13151
From: "yuu" <"yuu" <yuutarumi@xxxxxxxxxx>>
Date: Sun, 9 Jul 2006 23:09:21 +0900
Subject: [mysql 13151] Re: 在庫管理の設計について
まあ、Postgresにあまり関係ないですが・・・。 まず質問として何を聞きたいのかがわからないので、 気になることを羅列します。 ・トランザクションと、マスタを区別し、正規化を行うことは良い。 ・商品マスタに期限の情報がないのは問題しかも、キー情報では? ・商品マスタは商品番号と期限をIndexキーとし、プライマリはSEQを不要にしたほうがよい。 ・Stockテーブルの倉庫はマスタ化したほうが良い。 ・名称はキーとすると容量が大きくなってしまったり、速度が多少遅いので 避けるべき。なるべく、シーケンスやコードをキーとしたほうが良い。 構造についてはF.Yさんの言うとおり、入庫、出庫などの 情報もあるだろうし、全体像をはっきりさせたほうが良いと思われます。 以上。 > 、、、誰も答えんなぁ、、、、、、 > > (1) こんな設計でいい、かもしれない > こんな設計で良くない場合→同一商品番号が示すものが変わる場合 > 商品番号100の主力商品A、製造番号10000番台までは白い斑点だったのに10001 > 番台から勝手に制作サイドが青い斑点で送り込んできやがった、夏バージョン > てなんのことだよ > 商品番号101の準主力商品B、昨今の原油高騰の影響を受け、6/30までは1200円 > だったのに7/1からは価格改訂で1300円になった、6/25に15パレット納品され7/3 > に10パレット納品され、在庫マスタあたって実棚在庫価格出すといくらよ > 「ロット」とか「鮮度」のことを考えると在庫マスタは普通に入庫データと出 > 庫データを積み上げる方が自然じゃね? > 何月何日に何が10個入った、何月何日に何が5個出て行った、と > 入った数と出てった数でsum()すれば現在庫数が出るわけで > > (2) 新規の話を返信でやるのはやめれ > 質問が曖昧という次元ではなくて > 「 RE: 記号「`」とWHERE「1」の意味は?」で在庫管理の話をされてもねぇ。 > > --- info2 <info2@xxxxxxxxxx> wrote: > >> 以前ここで質問させて頂きました。 >> RevolutionというアプリでMySQとの接続をはじめて1ヶ月ぐらいになる鈴木で > す。 >> >> ヒントでもかまいませんので教えてください。 >> 単純な在庫管理のソフトを作り始めています。データベースはひとつ、 >> テーブルは次の二つで構成する予定です。 >> >> 1. Productテーブル >> 商品番号、商品カテゴリー、定価、卸し価格、産地.... >> (※商品番号が主キーです。) >> >> 2. Stockテーブル >> 商品番号、倉庫の名前、その倉庫にストックされた数 >> (※商品番号と倉庫の名前が複合キーです。倉庫は複数あります。) >> >> つまり、Productテーブル内には、倉庫の名前や商品の数などの情報が一切な > いのです。 >> このようにMySQL側を作っておけば(アプリケーション側でちゃんと数字を書 > き換えれば)、JOINコマンドで、どの商品がどの倉庫にいくつあるかが判ると思 > うので >> すが、拍子抜けするぐらい単純な構造です。こんな設計でいいのでしょ >> うか? >> (質問が曖昧すぎるでしょうか?) >> >> /KS > > > -------------------------------------- > Let's start Yahoo! Auction - Free Campaign Now! > http://pr.mail.yahoo.co.jp/auction/ > > >
13148 2006-07-06 18:12 ["F.Y" <fumi_sby@xxxx] 在庫管理の設計について 13150 2006-07-07 05:26 ┣[info2 <info2@xxxxxxx] -> 13151 2006-07-09 23:09 ┗["yuu" <yuutarumi@xxx] 13154 2006-07-11 22:32 ┗[info2 <info2@xxxxxxx] 13155 2006-07-12 00:37 ┗["Daniel Saito" <dsai] Official MySQL Japanese Discussion Forum