BIGデータを、上手に利用するには、データベースの作成が必須です。
これは、PowerQuery や、Excelがいかに優れていても、ACCESSには勝てません。
その説明をしたいと思います。
目次
データベースを作成するには?
こんにちは。伊川(@naonaoke)です。
ACCESSって、わからない、難しい、そんなことを、よく耳にします。
もっとも、ACCESSではなく、お金があるなら、他のデータベースを利用すればいいと思います。
Excelや、PowerQueryは、整形されたデータベースを前提にしなければなりません。
例えば、PowerQueryを利用すると、文字の分割等は、Excelよりもはるかにカンタンです。
しかし、それは、データベースを設計するときに、分割をしておけばいいだけの話です。
伊川直助⇒これは、絶対にやってはいけません。
伊川 直助⇒これは、まだマシです。しかし、スペースが全角なのか、半角なのかで、SQL文が変わってきますし、入力する人が、半角、全角は気にしないと思います。
このような場合に、PowerQueryなどを利用すると、楽になるというだけです。
伊川
直助
このように、姓と名は、絶対に分けるべきです。
伊川 直助を、分解するのは難しいですが、合体させるのはカンタンだからです。
このようなことを念頭において、データベースを作成すれば、その時点で、月の処理時間は、10時間は変わります。
余談ですが、私は、競馬はで、市販されている、4つの指数と、血統と、異常オッズ、その他の指数、約12種類を、毎週ACCSSに入力しています。
その中で、27種類の買い目を自動で作成しています。
これは、ACCESSを利用しないと無理です。
このブログはこんな人にお勧め
- データベースを作成したい人
- Excelでデータ管理に限界を感じている人
- ACCESSは、難しいと思っている人
このブログを、読み終わるころには・・・・
データの方、主キー、そして、オートルックアップクエリさえ、理解できれば、ACCESSの6割は理解できたと思って間違いないです。
データベースを作成する考え方
私も、そうでしたが、主キーが理解できませんでした。
その書籍もそうですが、主キーの説明が、あまい!
たった1ページで、説明できるようなものではありません。
私なら、主キーの説明で、図も入れて5ページ、
主キーが設定できたら、こんなメリットがあるよっていうので、20ページ
これくらいの説明が必要です。
そして、この主キーは、マイナンバーと同じ考え方で、国家も、JRAも利用している考え方です。
25ページでも、少ないと思っています。
前回は、司法書士試験の過去問を例にしましたので、今回も、司法書士試験の過去問を利用します。
データべースを作成する 作業手順 その1 主キーを作成する
ここが重要です。
この問題を見て、何を主キーにするのかを考えます。
パッと見ると、出題31-4が主キーになりそうです。
しかし、安直すぎます。
出題31-4が、主キーになりえるか?
私は、主キーには、ハイフン等は付けません。
半角、全角の問題があるからです。
主キーというのは、作成する側で、絶対に統一した概念が必要です。
31-4から、これは、平成31年の4問目という意味です。
314が、主キーになりえるか?
では、314という主キーはダメです。
経験上、桁数は揃えましょう。
3104が主キーになりえるか?
3104ではとうでしょうか?
確かに、重複はしないと思います。
しかし、ダメです。
平成31年の4問目は、理解できましたが、平成31年の4問目の1番目の肢、2番目の肢と分ける必要があります。
310401では、主キーになりえるか?
では、310401ではどうでしょうか?
平成31年の4問目の1番目の肢という意味です。
確かに問題はなさそうです。
ですがダメです。
理由は、数字のみだからです。
数字の桁数が多くなると、扱いが不便です。
伊川が作成した主キー
H31A0401
これを主キーとして設定しました。
Aは、午前の部門という意味です。
ちなみに、午後の部門は、Pとしました。
午後の部門の平成31年の4問目1番目の肢は、H31A0401となります。
なぜ、主キーに文字を含めているのかとうと、企業が、品番、型番を作成するときに、必ずアルファベットを含めています。
これを、パックってます。
文字を絡めることによって、0が抜けていたり、主キーが、指数表示なることを防いでいるからです。
Excelに転記しても、このよに、0は抜けません。
余談
JRAは、レースIDを設定しています。
202203130602041101、このように、18桁の数字の羅列です。
この数字の羅列なら、ACCESSのフィールドを、短いテキスト型に変更が必要となります。
上記は、Excelですが、このような、表示なります。
しかも、文字型で、CSVファイルで出力すると、” 202203130602041101”となります。
だから、JRAは、意地悪なんですね。
1文字でも、アルファベットが絡んでいたら、もっとデータベースの作成は、楽でした。
だから、数字のみは、ダメなのです。
データベースを作成する 作業手順 その2 フィールドの設定
ここも重要です。
データの方を決めなければなりません。
よく利用するのは下記でしょう。
短いテキスト
長いテキスト
日付/時刻型
Yes/No型
数値型
ここで設定するのは面倒です。
Excelを利用して作成します。
こんな感じで、作成します。
データベースを作成する 作業手順 その3 Excelを利用したフィールドの設定
こんな感じで、作成します。
最初から、横向きで作成すると面倒なので、縦に書き出します。
完成したら、セルの、行と列を入れ替えます
この部分を選択してACCESSへ貼り付けます。
ナビゲーションウィンドウのところで、右クリックで、貼り付けを選択してください。
これで完了です。
同じように設定できました。
必ず、主キーは設定しましょう。
これで、主キーを利用した、空のデータベースは完成です。
ここがポイント
主キーと、データ型の設定が完了すると、後は、データを入力していきましょう。
このように整形しておくと、後々の業務が楽になります。
入力フォームに関しては、ブログ、動画で説明していますので、参考にしていただければと思います。
まとめ
もっと説明したいことはあるのですが、今回はここまでにします。
次回は、入力したデータをいかに抽出するかを紹介します。
最強の検索フォームを被るかもしれませんが、是非ご期待ください。
今回も最後まで読んでいただきありがとうございました。
今回のサンプルファイルは、ありません。
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。