package Kernel::DB; use strict; use warnings; use DBI; sub new { my ( $Type, %Param ) = @_; my $Self = {}; bless( $Self, $Type ); $Self->{DBUser} = 'xxx'; $Self->{DBPassword} = 'xxx'; $Self->{DBName} = 'xxx'; $Self->{DBConnectString} = 'DBI:mysql:database=' . $Self->{DBName}; $Self->{dbh} = DBI->connect($Self->{DBConnectString}, $Self->{DBUser}, $Self->{DBPassword}); return $Self; } sub prepare { my ( $Self, %Param ) = @_; my $Querystring = $Param{Query}; $Self->{query} = $Self->{dbh}->prepare($Querystring); } sub fetchrow_array { my ( $Self, %Param ) = @_; $Self->{query}->execute or die $Self->{query}->err_str; return $Self->{query}->fetchrow_array(); } sub do { my ( $Self, %Param ) = @_; my $Querystring = $Param{Query}; $Self->{dbh}->do($Querystring); } 1;