Random unicode data corruption

G

Guest

I'm not sure if this is a security issue but here goes anyway.

Within a day, one record in each of two totally unrelated database files on
the same client's server had several fields mysteriously replaced by Chinese
characters - which on copy/paste into Word proved (surprise, surprise) to be
Unicode. The length of the unicode strings didn't match the length of the
correct strings. Additionally, a couple of date fields had the date reset to
31 Dec 1899 & 1 Jan 1900 ('day 0' and 'day 1' if memory serves...). All the
fields can be overwritten with the correct data.

Does anyone out there have any idea what could have caused this? Am I
looking at some kind of viral attack, could it be a couple of suspect sectors
on the hard disk, or what? My client and I are totally baffled!
 
T

TC

No Access version, no OS version, no information on how the databases
are set up (FE/BE?), or what code is behind them (if any), or whether
they are networked, or whether security has been applied, or how many
users they have ...

Should we just guess all that?

TC
 
G

Guest

Hi TC

OK, I'm a newcomer to the newsgroups so please excuse my omissions!!

The larger system, designed by me, is a client/server set up with a Jet back
end, and a good deal of VBA coding though none running on the fields affected
by the corrupted data. The client end sits on four of the network's
workstations.

The lesser system (set up by one of the client's own staff) is a single MDB
file sitting on the server (I've advised them to split it). Only a few users
have access (via the system login) - there are 4 regular users.

Win 2000 Server, Exchange Server; workstations XP Pro, Office XP 2003 (some
workstations running 2002, but not the users of either of these
applications), McAffee antivirus, hardware firewall on the server only
(sorry, no details), patchy anti spyware (no corporate policy but set up on
some workstations by the more knowledgeable staff). There's approx 25
workstations on the network in total.

If you need more details (eg Service Pack numbers) please ask and I'll get
the info from the client's IT 'manager' (the quotes are mine. Don't ask -
it's a long story...)
 
T

TC

Hi Laury

Sorry to snap. I'd had a bad day!

It sounds to me as if both systems are using Jet 4 (Access 2003). Jet
4, as you may know, was the first version of Jet to store all character
data in Unicode. However, it does have a compression scheme whereby it
will omit the leading zero byte of unicode values that start with a
zero byte. This scheme is exposed via a property called, from memory,
UnicodeCompression, or somesuch. There is nothing wrong with that
scheme, AFAIK, but it might be worth seeing whether the "bad" field,
and the "other" text fields, have the same value for that prop, or not.
Unlikely to be the cause of the problem, though.

The smaller system - the client designed one - should be split (as you
know) into an FE/BE structure. Not just because this makes code changes
easier - but also because it reduces the risk of corruption. It is
commonly believed that having multiple users on a single (unsplit) mdb
file, is likely to cause corruption. I don't have any specific
evidentiary references for that, but it is certainly a widely held
belief. I guess this could explain the corruption in the smaller
system.

I'm not clear what is the /front/ end in the larger system; if Access,
you have the same split issue.

Finally, I believe (though I have not yet experienced it myself), that
the initial versions of Jet 4 had some serious problems - eg.
duplicating autonumbers! Everyone recomends making sure that it is
patched to the latest service release (SR-7?) on /all/ PCs that are
using the system.

In summary, I thnk you will find it difficult to sort this out unless
it starts hapenning with some frequency. If the network is good, & Jet
is patched-up to its latest level, & the database are split, I can not
see what else you could do.

Good luck with the PHB!

Cheers,
TC
 
G

Guest

TC

Many thanks indeed - you've given me some great 'ammunition' for my next
visit to the client on Tuesday. I'm sure I've seen the UnicodeCompression
property on the properties window - now, not only do I know what it means, I
also have a damned good idea of what to do with it. And not just on the
systems that have had problems - but also to prevent the problems from
arising elsewhere. Many thanks again! And yes, the larger system does have an
Access front end.

I'm already a great fan of these newsgroups after a mere 3 or 4 days - I'm
pretty certain I've found the answer to a problem that Microsoft people
couldn't help with at a recent event (getting round the Outlook security
model when legitimately bulk emailing) just by scanning existing postings;
and so far I've used my own knowledge to help 4 other people further down the
learning curve. I think Im hooked!

At the risk of being repetitive, many thanks - including for your first
reply to my initial posting; in future I'll try to include all the relevant
info first time round!! (We all have the occasional bad day!!)

All the best
 
T

TC

No probs. Glad I could help!

The newsgroups are indeed a huge resource. Usenet, plus the internet in
general, is an information revolution similar to the invention of the
printing press, imho.

As for the unicode compression thing, don't be too quick to point the
finger at that, as the cause. It's only a related factor, at this
stage. I'd be reluctant to blame it for the problem unless I had strong
evidence. But you do need to patch Jet up to the latest version if you
have not done so already.

Good luck!
TC
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top