/[Frey]/trunk/lib/Frey/SQL.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk/lib/Frey/SQL.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 370 - (show annotations)
Mon Nov 17 15:14:07 2008 UTC (15 years, 5 months ago) by dpavlin
File size: 816 byte(s)
use DBD::AnyData instead of DBD::Sponge to enable SQL queries
on data returned by sponge (I'll keep the name because data
structure is the same)
1 package Frey::SQL;
2 use Moose;
3
4 use MooseX::Types::Moose qw(Str Int ArrayRef);
5 use MooseX::Types::Structured qw/Dict/;
6
7 use DBI;
8 use Data::Dump qw/dump/;
9
10 has 'query' => (
11 is => 'rw',
12 isa => 'Str',
13 required => 1,
14 default => sub {
15 my ($self) = @_;
16 'select * from ' . $self->table;
17 },
18 );
19
20 has table => (
21 is => 'rw',
22 isa => 'Str',
23 required => 1,
24 default => 'sponge',
25 );
26
27 has 'sponge' => (
28 is => 'rw',
29 isa => Dict[
30 rows => ArrayRef[ArrayRef],
31 NAME => ArrayRef[Str],
32 ],
33 required => 1,
34 );
35
36 sub data {
37 my ($self) = @_;
38
39 my $dbh=DBI->connect('dbi:AnyData(RaiseError=>1):');
40
41
42
43 my $data = $self->sponge->{rows};
44 unshift @$data, $self->sponge->{NAME};
45
46 warn "# data = ",dump( $data );
47
48 $dbh->func( $self->table, 'ARRAY', $data, 'ad_import' );
49
50 return $dbh->selectall_arrayref( $self->query );
51 }
52
53 1;

  ViewVC Help
Powered by ViewVC 1.1.26