Laboratory of Mobile Agricultural Chemicals Searcher
携帯農薬検索実験室

研究会

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
718 / 1063 <前へ | 次へ>

〔346〕Re:テーブルの構成
 Hidemi Oya WEB  (06/06/24 12:04)

引用なし
   kabe さん、s_kobayashi さん、こん**は。Hidemi Oya です。

[#343] kabe さん

>どこまでテーブルを正規化するのか、悩ましいところですが、単純な使い勝手を考えると、現状の方法でもいいのかなと思います。
 私もそう思います。

>ただ本来のデータベースということからすると、どういうテーブル構成にするのが理想的なのか、興味のあるところではあります。
 ひとつの ID に対して複数の行が存在する場合は、テーブルを分けるってのが原則なんでしょうね。とすると、[#343] が素直なテーブル構成だといえますね。あとは、作物名、病害虫名はテーブルを別に持ち、適用表には ID のみを保存するってところでしょうか…。
 実際にここまでする必要はありませんが、作物名については、上位分類や詳細作物名まで一気に検索するには、作物コードで検索できた方が便利かもしれませんね。

>あと、適用部分はけっこう空値のあるフィールドが多いので、どこまで別テーブルにするべきか。
 VARCHAR ならデータ領域がそれほど無駄になるわけでもないので、これは1テーブルで良いかな…。

>ACFider でこれをやるとデータ更新の時間は今より確実に増えますね。
 今でも結構かかるので、こいつが一番ネックですね。ただ、本題の通称に関しては、tekiyo テーブルでひとつずつ作ると膨大な数を処理しなければならないので、s_kobayashi さんの提案通り kihon テーブルのみとした方が更新時間は短縮できそうですね。

[#344] s_kobayashi さん

>今回のデータの場合、元データの形式を崩すとexcelデータとの見比べが出来なくなるなど却って使い勝手が低下する側面もあるので、やみくもに正規化する必要はないと思います。
 おっしゃるとおりだと思います(ま、kabe さんも実際にやるつもりは毛頭なさそうですけど)。が、[#342] で書いたように kihon テーブルと重複している「用途」「農薬の種類」「農薬の名称」「略称」「混合数」を tekiyo テーブルから削除するくらいであれば、下記のようなビューで簡単に元の Excel の表に戻せます。
 といっても、実際にこれをやるかどうかは、
(1) EXCEL 入出力コンポーネントから、重複部分を削除した INSERT 文を生成するのに要する時間
(2) SQLite でフルデータを書き込むのと短縮データを書き込むのに要する時間の差
を調べて判断する必要があります。

CREATE VIEW tekiyo AS
SELECT
 a.bango AS bango,
 kihon.yoto AS yoto,
 kihon.shurui AS shurui,
 kihon.meisho AS meisho,
 kihon.tsusho AS tsusho,
 kihon.ryakusho AS ryakusho,
 a.sakumotsu AS sakumotsu,
 a.basho AS basho,
  :
 a.kaisu5 AS kaisu
FROM compact_tekiyo AS a
LEFT JOIN kihon ON a.bango = kihon.bango


〔327〕ACFinder 060620版 kabe (06/06/20 23:21)
〔332〕Re:ACFinder 060620版 Hidemi Oya (06/06/21 16:06)
〔333〕SQL ステートメント制限 Hidemi Oya (06/06/22 11:45)
〔335〕Re:SQL ステートメント制限 kabe (06/06/22 22:46)
〔337〕正規表現拡張構文 Hidemi Oya (06/06/23 0:56)
〔338〕Re:正規表現拡張構文 Hidemi Oya (06/06/23 13:31)
〔341〕Re:SQL ステートメント制限 s_kobayashi (06/06/23 22:02)
〔342〕「キング」対応パターン Hidemi Oya (06/06/24 0:05)
〔343〕テーブルの構成 kabe (06/06/24 1:03)
〔346〕Re:テーブルの構成 Hidemi Oya (06/06/24 12:04) <<<
〔347〕Re:テーブルの構成 kabe (06/06/24 17:24)
〔348〕Re:テーブルの構成 Hidemi Oya (06/06/24 21:56)
〔349〕Re:テーブルの構成 kabe (06/06/24 22:29)
〔350〕Re:テーブルの構成 Hidemi Oya (06/06/25 3:04)
〔352〕Re:テーブルの構成 kabe (06/06/25 15:03)
〔354〕Excel 読み込み高速化 Hidemi Oya (06/06/25 16:35)
〔355〕Re:テーブルの構成 kabe (06/06/25 16:48)
〔356〕Re:テーブルの構成 Hidemi Oya (06/06/25 18:28)
〔357〕Re:テーブルの構成 kabe (06/06/25 21:25)
〔358〕Re:テーブルの構成 Hidemi Oya (06/06/25 22:41)
〔359〕Re:テーブルの構成 Hidemi Oya (06/06/25 23:17)
〔360〕Re:テーブルの構成 kabe (06/06/26 7:03)
〔361〕Re:テーブルの構成 Hidemi Oya (06/06/26 20:53)
〔351〕Re:テーブルの構成 kabe (06/06/25 14:24)
〔353〕Re:テーブルの構成 Hidemi Oya (06/06/25 15:53)
〔344〕Re:「キング」対応パターン s_kobayashi (06/06/24 8:42)
〔345〕Re:「キング」対応パターン Hidemi Oya (06/06/24 10:58)
〔334〕ACFinder 060622版 kabe (06/06/22 22:22)
〔336〕Re:ACFinder 060622版 Hidemi Oya (06/06/23 0:04)
〔339〕Re:ACFinder 060622版 kabe (06/06/23 19:46)
〔340〕Re:ACFinder 060622版 Hidemi Oya (06/06/23 20:02)

  ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索  
718 / 1063 <前へ | 次へ>
ページ:  ┃  記事番号:   
(SS)C-BOARD vv3.8 is Free.