JBD

 view release on metacpan or  search on metacpan

lib/JBD/Core/Db.pm  view on Meta::CPAN

    die 'Missing required args' if @_ < 4;
    my ($this, $table, $columns, $values) = @_;
    $this->execute(insert_query($table, $columns), $values);
}

#/ @param JBD::Core::Db $this
#/ @param scalar $table    A database table
#/ @param arrayref $columns    Column names to update
#/ @param arrayref $clauses    Where clauses
#/ @param arrayref $values    Column values
sub update {
    die 'Missing required args' if @_ < 5;
    my ($this, $table, $columns, $clauses, $values) = @_;
    $this->execute(update_query($table, $columns, $clauses), $values);
}

#/ @param JBD::Core::Db $this
#/ @param JBD::Core::Db $this
#/ @param string $table    A database table
#/ @param arrayref $clauses    Where clauses
sub delete {

lib/JBD/Core/Db.pm  view on Meta::CPAN

    my ($table, $columns) = @_;
    my $inserts = join ',', @$columns;
    my $params = join ',', map '?', @$columns;
    'INSERT INTO ' . $table . '(' . $inserts . ') VALUES(' . $params . ')';
}

#/ @param scalar $table    A database table
#/ @param arrayref $columns    Column names to update
#/ @param arrayref $clauses    Column names for the where clauses
#/ @return scalar    Update query SQL
sub update_query($$$) {
    my ($table, $columns, $clauses) = @_;
    my $updates = join ',', map "$_=?", @$columns;
    my $where = join ' AND ', @$clauses;
    'UPDATE ' . $table . ' SET ' . $updates . ' WHERE ' . $where;
}

#/ @param scalar $table    A database table
#/ @param arrayref $clauses    where clauses
#/ @return scalar    Delete query SQL
sub delete_query($$) {



( run in 0.337 second using v1.01-cache-2.11-cpan-95122f20152 )