お知らせ

  1. [課題]滋賀大データベース課題1(2019年12月10日記入)

    ■課題内容
    講義資料6-7(商とデータマイニング)に基づき、以下のことをまとめてください。
    (1)データマイニングとはどのような分析手法でしょうか?
    (2)「紙おむつを買う人は缶ビールを一緒に買う」のはなぜでしょうか?
    ネットからも調べてください。
    (3)相関ルールについて、サポート率(support)と確信度(confidence)にも言及して説明してください。
    (4)資料のRとSからなるデータベースを作成して、商演算を実行してください。
    そして、気の向くまま、思いつくまま、考察してください。
    ■提出要領
    ドキュメント:ワード(MS word)で作成してください。学籍番号と名前を忘れないで記入してください。

    提出方法:「講義資料参照」からログインして、「提出ボックス」に提出してください。
    ファイル名の付け方の注意事項が書いてありますので、それに従ってください。
    ■提出期限
    12月24日(火)23時59分

  2. [其他][DB]11月26日の質問等のコメント(2019年12月2日記入)


    1. ある期間で、どの商品が一番売れているのか、表示する(順番に並べる)ことはできますか?
      SELECT SName,SUM(Price*Quantity) AS 売上金額
      FROM syohin JOIN uriage using(SID)
      WHERE SalesDay>=’2019/4/1’ AND SalesDay<=’2019/6/30’
      GROUP BY syohin.SID
      ORDER BY 売上金額 DESC


    2. データ数は最大何個まで可能なのか
      データ数に制限はありません。ファイルサイズで制限されます。
      しかし、自動的にファイルサイズが増量されていきますので、OSのファイルサイズ上限が制限となります。
      現在のデータベースサイズを調べる方法が次のサイトに載っています。
      https://qiita.com/i35_267/items/2a591fa5e7dcae11e72c


    3. 5-10のSQL文を実行した結果が資料の表のようにならなかった。
      ごめんなさい。資料のデータに一貫性がありませんでした。訂正して再度アップしました。


    4. SQLのコマンドを大文字で入力しなきゃいけないこと
      小文字でも大丈夫です。


    5. コードをコピーしてもうまく実行してくれないことがありました。
      コピーした場合にFROM句などの前に改行コードが混入したり、アポストロフィが全角になったりします。確認、訂正して実行してください。


    6. SQLで出したテーブルを保存できるか。
      前回の講義で説明したように、これはビューといって仮想テーブルです。データベースに保存はされません。SELECTは検索結果を見るコマンドであるため、結果をデータベースに保存することはしません。ただし、CSVファイルに保存する機能がphpMyAdminにはあります。


    7. エラーの対処法をまとめたファイルがあるといいなと思った。
      XAMPPは今年から採用していますので、皆さんのエラーを収集しているところです。
      私もエラーを出しますが、メッセージをみたり、ネットで調べて解決できています。皆さんも独力で解決する力を養ってください。


    8. すでにアップロードされている資料内容は既に完了しているので、より先の資料を閲覧したいと思っています。
      すごいですね。お時間ください。


    9. 演習問題が欲しいです。
      第7章で準備しています。お時間ください。


    10. あと、最後の筆記テストではデータベースの構文等も書けるようにしたほうが良いのでしょうか。
      はい、出ます。


    11. 各テーブルの名前を資料のものと少し変えてしまっていたため、途中で混乱してしまった。
      応用力を付ける意味でも、できるようにしてほしいと思います。


    12. ワードやエクセルのようにひとつ前の作業に戻れるのか。
      データベースではコミットするといって、その時点のデータがデータベースに反映され公開されます。したがって、元に戻すことはできません。ワードやエクセルは個人での利用ですが、データベースは大勢で共有利用することが前提です。
      なお、phpMyAdminのSQLコマンドの演習では、SQL機能の「自動保存されたクエリを取得」をクリックすれば直前のSQLが表示されるようになっていますから、やり直しができます。


    13. 資料通りに作るだけでなく、自分で実践する時間も作ってほしいです。
      第7章で課題で出します。こうご期待。


    14. 各スライドに書かれているサンプルコード通りに打つと、インデントがないなどでエラーが吐き出されてしまい、上手く動かないことが結構あったため、サンプルとして載せているなら細かい所まで載せるべきだと思いました。
      サンプルコードは確認済みです。タイプミスがないか確認して実行しましょう。


    15. 間違えて作成してしまったテーブルを削除することが出来るのか知りたい。
      できます。操作タブをクリックしてみてください。


    16. 演習そのものはできるが、それがどのような意味を持つのかがいまいち理解できていない部分がある。
      他の人も同じように感じているかと思いますが、時間をかけて考えてください。また、第7章でもう一度SQLに取り組みますので、いま頑張りましょう。


    17. レポート2つあるとサクセスに書いてありましたが、いつ提出なのでしょうか。
      第7章で出します。

  3. [其他]データベース(11月19日)の質問へのコメント(2019年11月19日記入)

    11月19日、データベースの質問について


    1. SQLコマンド入力の際使用できない文字が含まれていますというような内容のエラーが出ます。
      コマンドの文字を確認してください。アポストロフィーは数字7のキーを使っていますか? 全角と半角は大丈夫ですか? 空白の全角は気づかないですよ。

    2. どう社会に今後に活かしていけると思いますか?
      11月19日の日経新聞にガンバ大阪の観客動員数が増えているという記事がありました。理由は、パナソニックのチームがデータ分析とマーケティングに参加したからです。まず、最初に行ったことがチケット販売と入場者のデータベースを構築したということでした。データベースがなければ何もできません。これだけではありません、社会での業務はデータベースを相手にパソコンなどを操作しています。

    3. データベーススペシャリストを在学中に取るメリットについてどうお考えですか?
      資格や検定試験は学習しているときに取るのが最良です。社会に出てしまってからは時間がありませんし、忘れてしまったことを勉強しなおすのには数倍のエネルギーが要ります。
      データベーススペシャリストがどう活きるかは貴君次第ではないでしょうか? そのための学習が有益であることは言うまでもないでしょう。

    4. これまで習った内容で実際に企業レベルで生かすことが出来る内容はありますか
      データベースの構築と操作の基礎スキルになりますが、このことを理解しているだけでもアドバンテージだと思います。

    5. データの結合をGUIでやる方法はありますか?
      わかりませんでした。

    6. エクスポートができないです
      実機を見ないとわからないです。

    7. 今日のようにわからないところがあれば手をあげて質問してもかまわないのでしょうか?
      手をあげてくださいと言いましたよ。

    8. syouhinをインポートすると、カラム数が異なりますとエラーが出るのですが、どうゆうことですか?
      テーブル定義とインポートデータの列数が異なっているのでしょうか。両方を確認してください。

    9. SQLにコードを入力する際に空白や改行の違いでエラーが出ることはありますか。
      半角空白が複数連なっても問題はないでしょう。全角空白はエラーになります。複数の改行も問題ありません。コマンドの語句をピックアップして構文解析しますから、空白や改行は影響ないはずです。

    10. SQL以外でデータベース構成はできるのか個人的にできるのならばpythonでやりたい
      それぞれのアプリに特化したものはできると思います。

    11. UTFCSVでない場合はどの形式で読み込むよう指定すれば、文字化けを回避できますか。
      phpMyAdminは良くできていて、インポートするときにファイルの文字セットをSHIFT-JISのようにファイルに合わせるとできます。

    12. ファイルのインポート無事にでき、データベース作成できました。ただ、CSVファイルで読み込もうとしたときに、変数名がutf8で読み込んでも文字化けする理由がわからないです。
      配布ボックスのCSVファイルはSHIFT-JISです。インポートのときにファイルの文字セットをSHIFT-JISと指定してみてください。


    13. xamppで作成したデータテーブルは自動保存されるのか?エクスポート以外に保存する方法があるのか?
      データベースの保存は自動的に行われます。エクスポートはいわゆる保存とは違って、その時点のバックアップです。

    14. tableの名前を変更したいです。どこからやればいいですか?
      まだ、教えていませんが、インポートの横の横にある「操作」でできます。やってみましょう。

    15. XAMPPの使い方があまりわかっていません
      何かまとまった本や参考書はありますか?
      これは、なんだろう、こんなこと、できるかなって、やってみてください。

    16. テーブルの作り方などはテストにでますか?
      作り方→設計は定番なのででます。

    17. 試験前に対策の講義などはしてくださりますか。
      どうでしょう?

    18. uriageに商品名と顧客名を記録しない理由が分りません。
      7章のデータベースの設計で説明します。マルチバイト文字列はメモリを消費し、また処理効率が良くないので通常はコード化します。オブジェクト指向データベースでは、このコード化を問題にしましたが、管理するうえで恩恵もありますね。

    19. 今日やった内容はすべて実行できているが、どうやってwindowsのアプリに追加できるのかがわからない。
      アプリとは具体的に何でしょうか。データ利用という意味であればCSV形式などでやり取りするとよいですね。

    20. 結合したデータベースは保存されているのか。
      テーブルの結合を行った結果は自動保存されないのか。
      結合結果は一時的なビューですので、データベースには保存されません。ただし、phpMyAdminでは「クエリ結果操作」のところでエクスポートができるためCSVファイルに保存できます。テーブル操作によって分析データを加工編集し、CSVファイルが作成できれば、他の統計アプリやプログラムで使うことができ有益ですね。

    21. データの入力や挿入などはコマンドを書かずともタブからそのような作業ができますが、やはりコマンドは習得しておくべきでしょうか。
      プログラムの中でSQLを記述するケースが出てきますから、習得しておくべきですね。

    22. 作ったデータベースで具体的に何ができるのかが知りたいです
      データベースの構築から操作全般を理解するための学習用データベースになります。


  4. [其他]【データベース】11月5日の質問への回答(2019年11月11日記入)

    11月5日に寄せられた質問から抜粋して以下のとおり回答します。ただし、筆者が勘違いしている点があるかと思います。その時はご容赦ください。なお、ご指摘歓迎です。


    1. 実際のデータベースでよく起こりうる不具合
      →難しい質問ですね。DBMSの問題というより、ユーザに問題がある場合がほとんです。

    2. データベースは身近なところでどんなふうに使われているのか分からないので教えてください。
      このようなテーブルを作ることは、ブログ等の管理で使ったりするのか
      →データベースは情報システムの中核技術です。データベースなしではシステムを作成できません。IT企業に就職しているOBが多くいますが、システム開発部門の社員でもSQLを知らない人が多いと嘆いておりました。
      システム開発⇒データベースを使う。データベースを使う⇒SQLを使う。情報系の仕事をする⇒データベースとSQLの知識とスキルが必要、となるのでしょうか。

    3. Xamppを使うことで何が嬉しいか教えて欲しいです
      XAMPPは今は手打ちで入力するとこまでしかやってませんが、具体的にどのようなときに使われてますか。
      XAMPPを用いるメリット・デメリットはありますか
      →筆者の現時点での利用では、@GUIによるデータベースの定義と操作、ASQLによるデータベースの操作、BインポートによるCSVファイルデータからテーブルへの一括入力、CエクスポートによるテーブルからCSVファイル等への書き出しが簡単にでき役立っています。
      さらに、データ分析をする場合、データの加工や編集が必ず必要になります。たとえば、最初から全ての分析項目がそろったレコードはほとんどありません。また、データの欠損や重複データ、異常データを発見して編集しなければなりません。
      この「前作業」をテキストエディタで行うのは現実的ではありません。エクセルはデータを見たままに操作できて便利ですが複数のシートを組み合わせようとする面倒です。また、データ数に限界があります。
      やはり、データベースでの作業が不可欠と思います。データベースが扱えないと分析はそこそこの範囲に留まると思われます。

    4. カラムの増やし方の方法はわかったが減らし方もあるのか知りたい。
      →テーブルを選択して、構造をクリックしてみてください。列フィールドの右に削除があります。

    5. uriageと入力していましたが、売上のように漢字やひらがなだとバグが生じることがありますか?
      テーブル名などがローマ字入力なのは何か理由があるんですか?
      →Xampp(MySQL)では日本語で定義しても動作します。ただ、互換性の問題から日本語による定義は避けます。ネットで「MySQL テーブル名 日本語」などで調べてみてください。

    6. MacでAppacheがうまく動かないが解決策を教えて欲しい
      →「mac apache 起動しない」などで調べてください。ポート番号の原因が多いようです。
      参考にしてください→https://dezanari.com/mac-xampp-apache/

    7. データテーブルへの入力の仕方を教えていただけますか?
      →資料を追加しました。

    8. 一度編集して保存したテーブルをまた編集しなおすにはどうしたらいいですか?
      →phpMyAdminでテーブルを選択して、表示をクリックしてください。表示されたレコードの左に編集、コピー、削除があります。

    9. MySQLのデータベース作成の仕方でテーブルは作成できましたが、顧客データと売上げデータの返り値が空になってしまいました。なぜですか。
      →これはエラーではないと思います。データが追加されていない状態なので、表示のとき(SELECT実行時)に返す値がないと言っているためと思います。

    10. SQLは独自に学ぶべきだと思いますか?
      SQLコマンドを覚えていくには、実際にデータベースを操作することが一番ですか。また、SQLコマンドの書き方に流派などはありますか。
      →それが一番だと思います。データベースの作成から始めて、講義で学んだことを発展させると確実なものになります。ちょっと時間を見つけて頑張りましょう。流派というのはわかりません。

    11. プログラミングを使いこなせるようになるコツはありませんか?
      この講義の自習や予習としてどのようなことをするのが良いですか?
      →プログラミングの上達は「失敗」しながら、繰り返しプログラミングを実践することではないでしょう。
      ものを作る作業では材料が必要です。また失敗すると材料を買いなおす必要がありお金も時間もかかります。プログラミングはパソコンがあればできます。失敗してもエディタで修正して即座に結果を確認できます。

    12. データベースについて自宅でできる勉強法やデータベースについてわかりやすく学べる書籍、本などがあったら教えていただきたいです。
      →出版業界の状況はご存知かと思います。売れる本、今なら人工知能関係でしょうか。これに力を入れています。そのため、データベースでは座学の定番はありますが、実用性を加味した適当な教科書がないというのが実状です。なお、参考書は最初の時間に次の2点を紹介しました。
      @「IT Text データベース」Ohmsha
      A情報工学テキストシリーズ「データベース」、共立出版
      身近なデータ(サークル、アルバイト先など)をデータベース化してみるとよいでしょう。そして、Webシステムに発展させて活用してみると完ぺきですね。昨年は、そこをねらいとして講義を展開しましたが.....

    13. A.Iにチェックを入れ忘れたので後からチェックを入れ直そうとしたら変更するときにエラーが出てうまくいきません。どうすればよろしいでしょうか。
      →UIDフィールドを削除してください。そして、あらためてUIDを追加してください。その時はAI指定を忘れずに。

    14. A.Iの仕組みについて簡単に教えてほしいです
      →ACCESSとうマイクロソフトのデータベース管理システムでは「オートナンバー」というデータ型で定義しました。MySQLではレコードを追加するとき既存レコードの値に+1していると思います。また、AI指定されたフィールドは優先的に主キーとなり、インデックスを構築するようになります。

    15. PRIMARYを設定することにより、主キーを設定できることは理解できますが、それをすることで結局何が起こるのかが分からないです。
      →良い質問です。主キーになると、主キー制約が働き、実体整合性をデータベース管理システムが保証するようになります。たとえば、すでに存在する主キーでデータを入力しようとすると「できない」ことを教えてくれます。同じ学生番号の学生が2人いたらどうなるか考えてみてください。

    16. テーブル内のNULLはどういうときに使いますか?
      →主キーのようにデータを絶対入力させる場合です。主キー以外では、その段階で入力できないものがありますから、nullを許可します。

    17. ウィンドウを消してもデータは残るのか。phpの保存方法はありますか。
      →EXCELなどと違って保存操作する必要はありません。1行入力して「実行」を操作すると保存されます。したがって、ウィンドウを閉じる前にデータベースは保存作業を完了しています。

    18. 本日の作業をしているときに、勝手にコンピューターが再起動をし始め、今までやっていた作業のデータが消えてしまいましたが、どこかに保存されたりしているのでしょうか。
      xamppのインストールができません。フォルダっがいっぱいだというコメントが出てきます。どうしたら良いですか。
      ApacheがAttempting to start Apache service...の状態で固まってしまいます。解決策について心当たりありましたらご回答お願いします。
      →この情報だけでは原因を特定できません。また、自分で解決できるスキルを身に付けましょう。

    19. XAMPPのコントロールパネルの開け方についてもう一度教えてください。
      →標準的なインストールならば、C:\xamppフォルダにあるxampp-control.exeを実行します。タスクバーにピン止めするか、ショートカットを作成するとよいでしょう。

    20. 今回インストールしたxxampでのデータベース操作をコマンドラインでも行う方法を教えてください。
      →多くの人に必要とは思われませんので講義では扱いませんが、自分で調べて行ってください。たくさんの事例解説があります。

    21. この授業で使っていくソフトはこれだけですか?
      →そうですね。XamppはWebサーバ、サーバ上で動作するPHP、そしてデータベース管理システムを統合しています。さらに、phpMyAdminが提供されています。

    22. 毎回の小テストは間違っていた場合点数は入りませんか?
      →基本的に出席確認とみなさんの理解度や要望などを探ることを目的にしています。したがって出席点は入ります。将来的には、回答内容を機械学習で自動採点して評価の数値化ができないかと考えています。

    23. 筆記試験の形式はどのようなものでしょうか。
      →60分間の筆記試験です。選択式、記述式(たとえば、用語などの解説、SQLの作成)、データベースの設計などでしょうか。

    24. 先生が普段プログラムを書くのに使用しているテキストエディタを教えてください。
      →昔から使っているTextEditorです。お薦めエディタをネットで調べてください。

    25. ポートなどインターネットに関する原理的な説明が欲しいです。
      →良い質問ですね。ネットワーク論の講義範囲ですが、コンピュータ通信はOSI参照モデルを基本にしています。インターネットではTCP/IPプロトコルが採用されています。
      ポート番号について補足すると、たとえば、Aさんがメールアプリで送ったコンテンツが、Bさんのlineアプリで開いてしまったらビックリぽんですね。
      どのアプリから送られて、どのアプリで受け取るかを、お互いしめし合わせているのがトランスポート層でのポート番号です。
      メール(SMTP)のポート番号は25です。
      WebのHTTPは80です。
      Lineは80と443を使っています。443はセキュリティ機能付きのhttpsです。
      Apacheも80と443を使います。既に使っているポート番号を後から別のアプリが使おうとするとNGなわけですね。
      アプリの名称でやり取りしていないことを覚えておきましょう。
      そこで質問です。
      BさんがLineアプリのポート番号を変えていたとします。AさんからBさんに送られたLineメッセージはどうなるでしょうか?

    26. 質問の時に再生する音声の購入元。
      →CeVio Creative Studioです。このソフトを使うとテキストを入力して3人の声で音声合成できます。ただ、アクセントなど微妙なところもあります。

    27. 出席に同じ日が2つあります。正しい表示ですか?
      →SELECT DISTINCT を使っていますので、同じ日は表示されないと思います。ただ、筆者が仮定していなかったある操作が行われると翌日に入力できてしまったようです。修正しました。

    28. [予定]googleに学ぶ機械学習セミナーの開催(11月25日)(2019年11月7日記入)

      月曜日なりますが、是非ご参加ください。
      詳しくはポスターをご覧ください。

      講演内容:
       今日、様々な分野で機械学習の活用が期待されています。
       本セミナーではGoogle社 酒井慎一氏を招いて「Googleの機械学習への取り組み、ツールの選択と活用法、成功例と失敗例から学ぶ機械学習プロジェクトのすすめ方、そして求められる人材とその育成及び組織に求められる成功の3要素」について講演して頂きます。
      日  時 11月25日(月) 午後2時30分より
      場  所 滋賀大学彦根キャンパス 大合併講義室
      対  象 滋賀大学学生・教職員および一般市民。
      ※聴講費・申し込みは不要です。

    29. [休講](橘)10月23日の休講のお知らせ(2019年10月15日記入)

      京都橘大学受講者の皆さん
      10月23日(水)の「ネットワーク論」および「データベース論」を休講にします。
      東京にて連携企業との協定調印式に出席します。

    30. [其他]京都橘大学ネットワーク論の受講者のみなさんへ(2019年10月1日記入)

      ■先週の講義で学生登録ができなかったケースが発生しましたが、登録が完了しましたので、次回の講義で説明します。

      ■先週のキーワードの復習


      1. ネットワークを構成するもの:ノード(情報の発信元、受け手、中継点)、リンク(伝送路、媒体)

      2. 人のネットワークの場合:ノード(    )、リンク(     )

      3. コンピュータネットワークの場合:ノード(    )、リンク(     )

      4. インター・ネット:インター(inter)の意味→(    )、ネットの意味→(    )

      5. 京都橘大学コンピュータネットワークの愛称は→(      )

      6. 京都橘大学コンピュータネットワークが相互接続するネットワークの名称は→(    )

    31. [其他]データサイエンス学部のみなさんへ(2019年10月1日記入)

      まだまだ暑い日が続きますが、スポーツと芸術の秋は、すぐそこまで来ています。
      「少年老い易く学成り難し(若いうちはまだ先があると思って勉強に必死になれないが、すぐに年月が過ぎて年をとり、何も学べないで終わってしまう、だから若いうちから勉学に励まなければならない-Wiki Pedia)」を胸に秘めて、いろいろなことに積極的に取り組んでください。
      行動に無駄なものはありません。

    32. [其他]京都橘大学の学生の皆様(2019年9月25日記入)

      後期からネットワーク論とデータベース論を担当します。
      講義資料の配布、出席回数の記録、レポート提出などはこのWebサイトを利用します。
      また、お知らせがあるときは、随時アップしますので、1週間に1回程度見てください。

      では、よろしくお願いします♡