print FILE ">$giName $gssName $definition\n$sequence";
####
$giName ||= " ";
####
# makes array interpolate with newlines
local $" = "\n";
# Pull my variable declarations outside the inner loop.
my ($giName, $gssName, $definition, $sequence, @seq);
while (($giName, $gssName, $definition, $sequence) = $sth2->fetchrow_array )
{
$sequence = uc( $sequence );
# If I'm right about your data, you just want to
# turn the whitespace into newlines.
# The following should be faster.
@seq = split /\s+/,$sequence;
# For any fields that can be null:
$giName ||= " ";
# Less interpolation will be faster, but we need it
# for the array.
print FILE ">",$giName," ",$gssName," ",$definition,"\n","@seq","\n";
}