/[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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 926 - (hide annotations)
Mon Jan 5 22:10:59 2009 UTC (15 years, 4 months ago) by dpavlin
File size: 793 byte(s)
introduce Sponge in Frey::Types to present tabular data [0.25]
1 dpavlin 370 package Frey::SQL;
2     use Moose;
3 dpavlin 414 extends 'Frey';
4 dpavlin 370
5 dpavlin 455 with 'Frey::Web';
6    
7 dpavlin 370 use DBI;
8     use Data::Dump qw/dump/;
9    
10 dpavlin 926 has 'sponge' => (
11     is => 'rw',
12     isa => 'Sponge',
13     required => 1,
14     );
15 dpavlin 920
16 dpavlin 370 has 'query' => (
17     is => 'rw',
18     isa => 'Str',
19     required => 1,
20 dpavlin 371 default => 'select * from sponge',
21 dpavlin 374 documentation => 'SQL query to filter data',
22 dpavlin 370 );
23    
24     has table => (
25     is => 'rw',
26     isa => 'Str',
27     required => 1,
28     default => 'sponge',
29 dpavlin 374 documentation => 'Name of table to create from sponge data',
30 dpavlin 370 );
31    
32 dpavlin 455 sub as_data {
33 dpavlin 370 my ($self) = @_;
34    
35     my $dbh=DBI->connect('dbi:AnyData(RaiseError=>1):');
36    
37 dpavlin 493 my $data = $self->sponge->{rows};
38     unshift @$data, $self->sponge->{NAME};
39 dpavlin 370
40 dpavlin 414 warn "# data = ",dump( $data ) if $self->debug;
41 dpavlin 370
42     $dbh->func( $self->table, 'ARRAY', $data, 'ad_import' );
43    
44     return $dbh->selectall_arrayref( $self->query );
45     }
46    
47     1;

  ViewVC Help
Powered by ViewVC 1.1.26