Fix #1451 : add server option for mssql

This commit is contained in:
garnier-quentin 2019-03-28 10:14:21 +01:00
parent 26ad3df902
commit 14f2a042ca

View File

@ -59,6 +59,7 @@ sub init {
arguments => {
'hostname:s@' => { name => 'hostname' },
'port:s@' => { name => 'port' },
'server:s@' => { name => 'server' },
'database:s' => { name => 'database' },
}
);
@ -66,8 +67,19 @@ sub init {
my $options_result = $self->{options}->get_options();
$self->{options}->clean();
if (defined($options_result->{server})) {
@{$self->{sqldefault}->{dbi}} = ();
for (my $i = 0; $i < scalar(@{$options_result->{server}}); $i++) {
$self->{sqldefault}->{dbi}[$i] = { data_source => 'Sybase:server=' . $options_result->{server}[$i] };
if ((defined($options_result->{database})) && ($options_result->{database} ne '')) {
$self->{sqldefault}->{dbi}[$i]->{data_source} .= ';database=' . $options_result->{database};
}
}
}
if (defined($options_result->{hostname})) {
@{$self->{sqldefault}->{dbi}} = ();
for (my $i = 0; $i < scalar(@{$options_result->{hostname}}); $i++) {
$self->{sqldefault}->{dbi}[$i] = { data_source => 'Sybase:host=' . $options_result->{hostname}[$i] };
if (defined($options_result->{port}[$i])) {
@ -78,6 +90,7 @@ sub init {
}
}
}
$self->SUPER::init(%options);
}
@ -99,6 +112,10 @@ Hostname to query.
Database Server Port.
=item B<--server>
An alternative to hostname+port. <server> will be looked up in the file freetds.conf.
=back
=cut