]> git.koha-community.org Git - koha.git/blob - Koha/Installer.pm
Bug 28267: Add warnings for database row formats
[koha.git] / Koha / Installer.pm
1 package Koha::Installer;
2
3 # This file is part of Koha.
4 #
5 # Koha is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # Koha is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with Koha; if not, see <http://www.gnu.org/licenses>.
17
18 use Modern::Perl;
19
20 use C4::Context;
21
22 =head1 NAME
23
24 Koha::Installer - Class that provides installation related methods
25
26 =head1 API
27
28 =head2 Class Methods
29
30 =cut
31
32 =head3 check_db_row_format
33
34 =cut
35
36 sub check_db_row_format {
37     my ($class) = @_;
38     my %result = ();
39     my $database = C4::Context->config('database');
40     if ($database){
41         my $dbh = C4::Context->dbh;
42         my $sql = q#
43             SELECT count(table_name)
44             FROM information_schema.tables
45             WHERE
46                 table_schema = ?
47                 AND row_format != "Dynamic"
48         #;
49         my $sth = $dbh->prepare($sql);
50         $sth->execute($database);
51         my $row = $sth->fetchrow_arrayref;
52         my $count = $row->[0];
53         if ($count){
54             $result{count} = $count;
55         }
56     }
57     return \%result;
58 }
59
60 1;