in reply to Updating entry in DBM file adds extra character %09

When I update a record in my DBM file, %09 is appended at the frontside of each value.

Assuming you mean the character that is %09 when uri-encoded, you are talking about \t, the tab character. (It is also known as ^I, \009, \x09, \cI, etcetera).

I've looked at your code, and it appears you have avery large interpolated string. Layed out different, it is:

{ $foo = " $bar $baz $xyzzy "; }
(Well, I couldn't enter tab characters in Mozilla, so I used four spaces instead.)
That code equals:
{ $foo = "\n\t\t$bar\n\t\t$baz\n\t\t$xyzzy\n\t"; }
The solution is to remove the whitespace from your variable. You'll have a very long line by then. It might be useful to know that Perl lets you concatenate strings using the . operator :)

U28geW91IGNhbiBhbGwgcm90MTMgY
W5kIHBhY2soKS4gQnV0IGRvIHlvdS
ByZWNvZ25pc2UgQmFzZTY0IHdoZW4
geW91IHNlZSBpdD8gIC0tIEp1ZXJk