タグ別アーカイブ: MySQL

Lubuntu インストール記(9)

今回は、少しデータベースに挑戦してみます。といってもあまり複雑なものないし実用的なものは、苦手なので、「百人一首」をデータベース化したいと思います。ネットには、「百人一首」のリソースとして、
This is の田の資料集
学ぶ・教える.COM
学校で使える各種文書
などあり、そのほとんどが、Excel ファイルです。今回は、そのエクセルを、LibreOffice Calc にて、CSVファイルに加工しました。
それを、MySQLに取り込みます。そのためには、下準備も含めて、phpmyadmin が便利なのですが、その前提として、様々なアプリケーションをインストールします。

$ sudo apt-get install mysql-server
$ sudo apt-get install apache2
$ sudo apt-get install php5
$ sudo apt-get install phpmyadmin
$ sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

で、http://localhost/phpmyadmin で、MySQL に接続できます。それを使って、新しいデータベース「100nin」とユーザー「100nin」(パスワードは無しの方が便利でしょう。)を追加します。加工済みのCSVファイルを、データベースに入力しますが、とりあえず、phpmyadmin の「インポート」(CSVファイル)を利用し、後で項目を付け加えたり加工します。最終的には、テーダ構造は、図のようになりました。

次に、LibreOffice Base の方のインターフェイスを準備しますが、JDBCとか、ODBC接続とか話がややこしいので、直接、MySQLに接続するドライバをインストールします。

$ sudo apt-get install libreoffice-mysql-connector

それを使って、LibreOffice Base を使い、MySQL に接続します。インターフェイスとして、Form を作りますが、原型は、Wizart を使ったほうが速いでしょう。それを少し修正したのが、図3と図4です。そのフォームで、足らない部分は、インターネットのリソースを利用しながら、コピー&ペーストなどで埋めてゆきます。画像は、データタイプとして、longblob を設定しましたが、画像入力は、250kb あたりが限界なようで、それ以上だと、Libreoffice Base が落ちます。

以上で、「百人一首データベース」の完成です。

・MySQL ファイル
http://www.nishinari.coop/db/100nin.sql
シェルにて

$ mysql -u 100nin 100nin < 100nin.sql

でインポートされます。

・LibreOffice Base ファイル
http://www.nishinari.coop/db/100nin.odb
http://www.nishinari.coop/db/100nin.odt

同一ディレクトリに置いて、100nin.odb の方を、LibreOffice でオープンして下さい。