時報ツイートだけではつまらないので、あらかじめ用意した文面を定刻にポストするという、基本的な機能を実装してみることにしました。
その上で、発言を格納するのにデータベースを用いることにしました。
テキストファイルでも良いのですが、データベースにしておけば管理が楽になるかなと思ったので。
で、とりあえず、SQLiteをrubyで使うために、コマンドプロンプトで
gem install sqlite3-rubyとして、gem経由でsqlite3用のライブラリをインストール。
準備はこれだけ。後は、スクリプトでrequireしてやるだけ。
requier 'rubygems' require 'sqlite3'ちなみに、ここではSQLite3を利用しているので、このような記述になりました。
クエリを実行するには、dbを読み込んでからexecuteしてやるだけです。
読み込み終わったら、クローズしてやるのを忘れずに。
#ここでデータベースを読み込む(無い場合は作成される) db = SQLite3::database.new("test.db") #クエリの実行 puts db.execute("select * from Table") #dbを閉じる db.close尚、SQLite3をincludeしてやれば、SQLite3::は不要になります。
include SQLite3 db = database.new("test.db")複数のクエリを実行する場合は、ヒアドキュメントで複数のクエリを変数に格納し、それをexecute_batchの引数として渡してやれば良いです。
#ヒアドキュメント作成(insert intoクエリ) sql = <<SQL insert into Table (colum1,colum2) value (value1,value2); insert into Table (colum2,colum2) value (value3,value4); insert into Table (colum1,colum2) value (value5,value6); SQL db.execute_batch(sql)テーブルの作り方は、他のDBと何ら変わりはありません。
create tableしてやれば良いです。
#テーブル作成 sql = <<SQL create table Table ( colum1 type, colum2 type, ); SQL db.execute(sql)typeには、integerとかtextとか、フィールドの型を入れます。
データベース操作に慣れている人なら、迷うこともないでしょう。
基本はSQLなので、SQLさえ知っていれば扱うことは容易です
大学3年の時の実習講義で苦労したことを思い出しますね・・・。
とまぁ、SQLiteを扱うのは非常に簡単です。
用意した文面を保管するくらいなら、SQLiteで発言を管理するのも良いかもしれません。
形態素解析で得た単語を蓄積するなら、MySQLやMS SQLServer等を使った方が良いかもしれないですけど。
文面以外のデータも、データベースで管理できたら良いなぁとか思っています。
スポンサードリンク