sironekotoroの日記

Perl で楽をしたい

データをSQLiteに落としこむ

SQLite

  • ズルしております
  • FireFoxの「SQLite Manager」アドオンを使ってデータベースの骨組みを作る。
  • 作ったDBにPerlで情報を溜め込んでみたり、読み込んでみたりの実験中。

use strict体質

  • use strict 忘れてスクリプト書いて、その後にuse scriptしてもエラーも警告も出なかった。
  • 郭海皇の「利合が握られていた」を思い出しちゃったね
    • おおげさ

今日の苦労したところ

  • DBに登録するときに、重複チェックをかけたかったんだけど、なかなかうまく実装できず。
    • 登録するアイテムのタイトル(文字列)が同じだったらINSERTしない、ってのを書いたんだけど、DB側で文字列の比較演算する方法でつまずく。
  • 次に、DB登録時にユニークなID(整数)を加えて、それで登録済みかどうかを比較する方法へ。
    • 追加登録するするときには、まずユニークな値でDBを検索。
      • 検索にヒットしなかった場合にはDBにINSERT
    • 検索にヒットしたら何もしない
    • これならうまく行くだろ!
      • いかない
      • 検索にヒットしなかった時に、そのアイテムの情報が返ってこない・・・?
  • 新規登録アイテムのユニーク番号の集合と、DB登録済みのユニーク番号の集合を比較し、差集合をとる
    • なんか、もっとスマートな方法があるんじゃないか

あんれ?

  • レッツ serverman VPSで稼働!と思ったらDBIが無いって怒られる。
    • cpanm --sudo DBD::SQLite
    • DBIのビルドとインストールが長くてちょっとビビる
  • 無事インストール完了。スクリプトも動きました。ありがとうcpanm