#
# Stuff like table creates and (later) alters
#
-# $Id$
+#
#
# Copyright (c) 2005 Dirk Koopman G1TLH
#
use DXDebug;
+use vars qw(@ISA);
@ISA = qw{DXSql};
sub show_tables
my $sth = $self->prepare($s);
$sth->execute;
my @out;
- push @out, $sth->fetchrow_array;
+ while (my @t = $sth->fetchrow_array) {
+ push @out, @t;
+ }
$sth->finish;
return @out;
}
+sub has_ipaddr
+{
+ my $self = shift;
+ my $s = q(describe spot);
+ my $sth = $self->prepare($s);
+ $sth->execute;
+ while (my @t = $sth->fetchrow_array) {
+ if ($t[0] eq 'ipaddr') {
+ $sth->finish;
+ return 1;
+ }
+ }
+ $sth->finish;
+ return undef;
+}
+
+sub add_ipaddr
+{
+ my $self = shift;
+ my $s = q(alter table spot add column ipaddr varchar(40));
+ $self->do($s);
+}
+
sub spot_create_table
{
my $self = shift;
spotteritu tinyint,
spottercq tinyint,
spotstate char(2),
-spotterstate char(2)
+spotterstate char(2),
+ipaddr varchar(40)
)};
$self->do($s);
}
sub spot_add_indexes
{
my $self = shift;
- $self->do('create index spot_ix1 on spot(time desc)');
dbg('adding spot index ix1');
- $self->do('create index spot_ix2 on spot(spotcall asc)');
+ $self->do('create index spot_ix1 on spot(time desc)');
dbg('adding spot index ix2');
+ $self->do('create index spot_ix2 on spot(spotcall asc)');
}