return @dbsources;
}
+sub dbclusterencoding {
+ $main::lxdebug->enter_sub();
+
+ my ($self, $form) = @_;
+
+ $form->{dbdefault} ||= $form->{dbuser};
+
+ dbconnect_vars($form, $form->{dbdefault});
+
+ my $dbh = DBI->connect($form->{dbconnect}, $form->{dbuser}, $form->{dbpasswd}) || $form->dberror();
+ my $query = qq|SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'template0'|;
+ my ($cluster_encoding) = $dbh->selectrow_array($query);
+ $dbh->disconnect();
+
+ $main::lxdebug->leave_sub();
+
+ return $cluster_encoding;
+}
+
sub dbcreate {
$main::lxdebug->enter_sub();
my $query = $dbcreate{$form->{dbdriver}};
$query .= " WITH " . join(" ", @{$dboptions{"Pg"}}) if (@{$dboptions{"Pg"}});
- do_query($form, $dbh, $query);
+ # Ignore errors if the database exists.
+ $dbh->do($query);
if ($form->{dbdriver} eq 'Oracle') {
$query = qq|GRANT CONNECT, RESOURCE TO "$form->{db}"|;
last if ($version < $mindb);
# apply upgrade
- $main::lxdebug->message(DEBUG2, "Applying Update $upgradescript");
+ $main::lxdebug->message(LXDebug::DEBUG2, "Applying Update $upgradescript");
if ($file_type eq "sql") {
$self->process_query($form, $dbh, "sql/" . $form->{"dbdriver"} .
"-upgrade/$upgradescript", $str_maxdb, $db_charset);
my $file_type = $1;
# apply upgrade
- $main::lxdebug->message(DEBUG2, "Applying Update $control->{file}");
+ $main::lxdebug->message(LXDebug::DEBUG2, "Applying Update $control->{file}");
print $form->parse_html_template("dbupgrade/upgrade_message2", $control);
if ($file_type eq "sql") {