DBIx-Romani

 view release on metacpan or  search on metacpan

Makefile  view on Meta::CPAN

# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto
AUTOSPLITFILE = $(PERLRUN)  -e 'use AutoSplit;  autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1)'



# --- MakeMaker tool_xsubpp section:


# --- MakeMaker tools_other section:
SHELL = /bin/sh
CHMOD = chmod
CP = cp
MV = mv
NOOP = $(SHELL) -c true
NOECHO = @
RM_F = rm -f
RM_RF = rm -rf
TEST_F = test -f
TOUCH = touch
UMASK_NULL = umask 0
DEV_NULL = > /dev/null 2>&1

lib/DBIx/Romani/Connection/Base.pm  view on Meta::CPAN

		return DBIx::Romani::PreparedQuery->new( $self, $query );
	}
	else
	{
		return $self->get_driver()->create_prepared_statement( $self, $query );
	}
}

sub execute
{
	my ($self, $query, $fetchmode) = @_;

	my $sql = $self->generate_sql( $query );
	if ( $query->isa( 'DBIx::Romani::Query::Select' ) )
	{
		return $self->execute_query( $sql, $fetchmode );
	}
	else
	{
		return $self->execute_update( $sql );
	}
}

sub execute_query
{
	my ($self, $sql, $fetchmode) = @_;
	
	my $sth;
	$sth= $self->get_dbh()->prepare( $sql );
	$sth->execute();

	return $self->get_driver()->create_result_set( $self, $sth, $fetchmode );
}

sub execute_update
{
	my ($self, $sql) = @_;

	# returns the number of affected rows
	return $self->get_dbh()->do( $sql );
}

lib/DBIx/Romani/Driver.pm  view on Meta::CPAN

}

sub create_prepared_statement
{
	my ($self, $conn, $sql) = @_;
	return DBIx::Romani::PreparedStatement->new( $conn, $sql );
}

sub create_result_set
{
	my ($self, $conn, $sth, $fetchmode) = @_;
	return DBIx::Romani::ResultSet->new( $conn, $sth, $fetchmode );
}

sub escape_string
{
	my ($self, $s) = @_;

	$s =~ s/'/''/g;

	return $s;
}

lib/DBIx/Romani/PreparedQuery.pm  view on Meta::CPAN


	bless  $self, $class;
	return $self;
}

sub get_conn  { return shift->{conn}; }
sub get_query { return shift->{query}; }

sub execute
{
	my ($self, $values, $fetchmode) = @_;

	my $sql = $self->get_conn->generate_sql( $self->get_query(), $values );
	if ( $self->get_query()->isa( 'DBIx::Romani::Query::Select' ) )
	{
		return $self->get_conn()->execute_query( $sql, $fetchmode );
	}
	else
	{
		return $self->get_conn()->execute_update( $sql );
	}
}

1;

lib/DBIx/Romani/PreparedStatement.pm  view on Meta::CPAN

}

sub get_conn         { return shift->{conn}; }
sub get_sth          { return shift->{sth}; }

sub execute_query
{
	my $self = shift;

	my $params;
	my $fetchmode;

	my $args = $_[0];
	if ( ref($args) eq 'HASH' )
	{
		$fetchmode = $args->{fetchmode};
		$params    = $args->{params};
	}
	else
	{
		$params = \@_;
	}

	$self->{sth}->execute( @$params );

	return $self->{conn}->get_driver()->create_result_set( $self->{conn}, $self->{sth}, $fetchmode );
}

sub execute_update
{
	my $self = shift;
	return $self->{sth}->execute( @_ );
}

sub set
{

lib/DBIx/Romani/ResultSet.pm  view on Meta::CPAN

	my $args  = shift;

	my $conn;
	my $sth;
	my $mode;

	if ( ref($conn) eq 'HASH' )
	{
		$conn = $args->{conn};
		$sth  = $args->{sth};
		$mode = $args->{fetchmode};
	}
	else
	{
		$conn = $args;
		$sth  = shift;
		$mode = shift;
	}

	if ( not defined $mode )
	{

lib/DBIx/Romani/ResultSet.pm  view on Meta::CPAN

		row  => undef,
		mode => $mode,
	};

	bless  $self, $class;
	return $self;
}

sub get_conn      { return shift->{conn}; }
sub get_row       { return shift->{row}; }
sub get_fetchmode { return shift->{mode}; }

sub next
{
	my $self = shift;

	if ( $self->get_fetchmode() == FETCHMODE_NUM )
	{
		$self->{row} = $self->{sth}->fetchrow_arrayref();
	}
	else
	{
		$self->{row} = $self->{sth}->fetchrow_hashref();
	}

	# return true if we still have data
	return defined( $self->{row} );
}

sub get
{
	my ($self, $column) = @_;

	if ( $self->get_fetchmode() == FETCHMODE_NUM )
	{
		return $self->{row}->[$column];
	}
	else
	{
		return $self->{row}->{$column};
	}
}




( run in 0.311 second using v1.01-cache-2.11-cpan-8d75d55dd25 )