タグ

ブックマーク / perl-users.jp (31)

  • #03 insert / fast_insert - Articles Advent Calendar 2011 Teng

    昨日でTengを利用するのに必要なクラス定義は終了しているので早速 次のステップとして新しいレコードをデータベースに登録する INSERTの方法を紹介します。 insertメソッド SQLのINSERT文を実行するには以下のようにします。 my $row = $teng->insert('user', +{id => 1, name => 'nekokak'}); このようにすると、 INSERT INTO user (id,name) VALUES(1,'nekokak'); というようなSQLが実行され、データベースに新しい行が登録されます。 Tengのinsertメソッドの返り値として、insertしたtableに対応するRowクラスでインスタンス化された Rowオブジェクトがかえってきますので、 $row->id; # 1 $row->name; # nekokak といったように

  • #02 schemaの定義方法 - Articles Advent Calendar 2011 Teng

    Tengを使うにはまずSchemaの定義を行う必要があります。 なお、今回はProj::DBというnamespaceで統一して記述していきます。 コードは特記しない限りSQLiteを前提としています。 以下のようなテーブルがあるとし、 create table user ( id integer, name text, primary key ( id ) ); create table status ( id integer, user_id integer, body text, primary key ( id ) ); コレに対応するTengのSchemaは以下の様に書きます。 package Proj::DB::Schema; use strict; use warnings; use Teng::Schema::Declare; table { name 'user'; pk

    #02 schemaの定義方法 - Articles Advent Calendar 2011 Teng
  • #01 Teng is simple and lightweight ORM - Articles Advent Calendar 2011 Teng

    こんにちは! 今年はボクが作ってるTengというPerlORMについて 25日かけて紹介してみたいとおもてるんだ。 師走ってことで仕事もあっていろいろあって忙しいから完走できるかどうか不安なんだけど みんなに是非つかってもらいたいから頑張るんだ。 この記事執筆時点のTengの最新バージョンは0.14_03のdev releaseとなっています。 25日間でTengのバージョンがupされるかもしれませんがその場合は注意書きをいれますのでご注意ください。 Tengのリポジトリはhttps://github.com/nekokak/p5-TengこちらですのでCPANにupされる前に試したい! Tengにpatches and testsを叩きつけたい!という場合はforkしてpull requestしてくだされば よきにmergeしますよ。 Tengはなるべく依存モジュールが増えないようには

    #01 Teng is simple and lightweight ORM - Articles Advent Calendar 2011 Teng
    amari3
    amari3 2011/12/03
  • Alien::RRDtool - RRDtoolをCPANから入れる - Perl Advent Calendar Japan 2011 Hacker Track

    前置き こんにちは。gfx です。みなさん、意識は高まっていますか? 僕は上々です。今回は拙作の Alien::RRDtool というモジュールを紹介いたします。 CloudForecastやGrowthForecastを使いたい!と思ったとき、RRDtoolのPerlバインディングであるRRDs.pmをインストールするのが面倒だったりします。特にperlbrewで入れたperlではRRDtoolsのソースコードをとってきてビルドしなければならないため、RRDtoolはパッケージマネージャを使ってインストールし、CloudForecastはsystem perlで動かすというのが今までのベストプラクティスでした。 Alien::RRDtoolはRRDtoolをCPAN経由でインストールするためのモジュールで、RRDtoolの各種コマンドとPerlバインディングを簡単にインストールすることが

    Alien::RRDtool - RRDtoolをCPANから入れる - Perl Advent Calendar Japan 2011 Hacker Track
    amari3
    amari3 2011/12/02
    これはインスコが楽になりそう
  • DBIx::Handlerで安心DB生活 - Articles Advent Calendar 2011 Dbix

    こんにちは!nekokakです! 今年はボクが作ってるDBIx::Handlerというものを紹介してみる。 DBIx::HandlerはDBIのラッパーでありDBのコネクション周りの管理に重点を置いたモジュールである。 ORMを使わずにDB周りの処理を行いたい場合はこのDBIx::Handlerを使うことをおすすめする。 自分でDBIのインスタンスを生成し利用する場合どこまで正しくコネクション管理をあなたはできますか? そもそも親プロセスで接続したdbのインスタンスを子プロセス側でも利用することの問題を正確に把握していますか? そこまで正しく細かく理解し自分で実装できたとしてもだ、新しいプロジェクトを作るたびにそのコードをコピペするのか? そこでDBIx::Handlerの出番だ。 DBIx::Handlerはそのあたりの処理をすべて面倒みてくれる。 もうあなたは いつDBとの接続が着られ

    DBIx::Handlerで安心DB生活 - Articles Advent Calendar 2011 Dbix
  • SQL::Abstract を使い倒す - JPerl Advent Calendar 2009

    SQL::Abstract を使い倒す - JPerl Advent Calendar 2009 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな? 今更、携帯小説にハマってる id:ZIGOROu です。モバゲーのオンライン3って小説が面白いですよ! 今日は SQL::Abstract を使い倒すと言うネタで行きます。 まず超基編 簡単な SQL 文の生成から始めましょう。 use strict; use warnings; use Data::Dump qw(dump); use SQL::Abstract; my $s = SQL::Abstract->new; my ($stmt, @bind) = $s->select( "activity", # tables [qw/id title sender created_on/], # columns

  • Perl の map と grep を使う

    すしを奢らなければいけないなんて、バトンを渡されてから知りました。おいしい寿司がいたい sekimura です。 今回は使いこなすと気持ちよくて、使いすぎると気持ち悪いと言われてしまう grep と map の使い方について紹介します。この二つは文法がよく似ていて、同時に使われることも多いので一気に両方の使い方を覚えるのをおすすめします。 grep: 配列をフィルターする まずは、前回覚えた perldoc を使って grep とはなにかを調べてみましょう。 $ perldoc -f grep grep BLOCK LIST grep EXPR,LIST This is similar in spirit to, but not the same as, grep(1) and its relatives. In particular, it is not limited to usin

    amari3
    amari3 2011/05/10
  • Perlの開発環境をCasualに作ろう - Articles Advent Calendar 2010 Casual

    JPerl Advent Calendar Casual Track 一日目をやる myfinder です。 去年はlocal::libがもてはやされたりしていましたが、あれから1年の間にPerlは更に手軽に使えるようになりました。 初日、最初の一歩ということで今回はPerl開発環境を簡単に作るための手順をまとめます。 対象は基的にLinuxで、さくらのVPSとかその辺を想定しています。 Macでも同じようにやればできるでしょう。 Windowsの場合はわかりません。きっとWin32トラックの人が書いてくれると思います(ぉ perlbrew これまでは、システムの提供するPerl + local::libで環境を作っていたと思いますが、perlbrewの登場によってPerl体すらも自分のアカウント内に置くことが簡単にできるようになりました。 バージョンの切り替えもできるので、複数のバー

    Perlの開発環境をCasualに作ろう - Articles Advent Calendar 2010 Casual
  • Windows でも Growl を使おう - Articles Advent Calendar 2010 Win32

    こんにちわ。Growl 大好きっ子 mattn です。 重たいバッチジョブを走らせている間、別の作業をする。ジョブが終わったらデスクトップに Growl を表示させて処理の完了を知る。 その合間にもRSSから配信されたニュースや自分への Mention を Growl 表示し、あっという間に情報を操作する。 誰もが憧れる Hackish な作業風景ですね。Mac ユーザであればその他の活用方法を知ってる人も数多くいるでしょう。 Windows だから同じ様には行かない... そんな風に思っていた頃が僕にもありました。 Growl For Windows http://www.growlforwindows.com/gfw/ そんな僕らはある日 Growl を得た。リッチな UI そして変更出来るデザイン。アイコンも表示出来る。さらにはプロトコルが公開されている。 http://www.gr

    Windows でも Growl を使おう - Articles Advent Calendar 2010 Win32
    amari3
    amari3 2010/12/12
  • メールの送信 - モダンなPerl入門 - モダンなPerl入門

    メールを送信する メールを送信するのには Email::Send をつかいます。 つかいかた use strict; use warnings; use utf8; use Encode; use Email::MIME; use Email::MIME::Creator; use Email::Send; # メールオブジェクトをつくる my $mail = Email::MIME->create( header => [ From => 'from@example.com', To => 'to@example.com', Subject => Encode::encode('MIME-Header-ISO_2022_JP', 'コンニチワ'), ], body => encode('iso-2022-jp', '元気でやってるかー?'), ); # Email::Send で送信する

  • Perl-users.jp - 日本のPerlユーザのためのハブサイト

    Perl Mongers Perl Mongers とは、日各地に存在する、Perl ユーザーのコミュニティのことです。各種イベントが行われていますので、是非参加してみましょう。 Shibuya.pm Fukuoka.pm Kansai.pm (@kansaipm) Yokohama.pm (@yokohamapm) Hokkaido.pm (@hokkaidopm) Nagoya.pm (@nagoyapm) Kushiro.pm (@kushiropm) Kyoto.pm (@kyotopm) Kamakura.pm Niigata.pm (@niigatapm) Sendai.pm (@sendaipm) Tokyo.pm Hachioji.pm (@hachiojipm) Chiba.pm (@chibapm) Yomitan.pm (@yomitanpm) Machida.pm