Why i change back to Microsoft Outlook from Mozilla Thunderbird

Written on 6:05 AM by ronald

I change to Mozilla Thunderbird...for like 2 or 3 years already..
I really like it very much because of the fact that it is much much faster than the bloated Microsoft Outlook and the fact that it is free..

Even the fact that i was never able to read HTML emails as effectively as displayed in Microsoft Outlook.

But recently, i got a sudden restart of my computer and when it boot up again.
I realized all my emails was gone.

Then i realized that this is a known problem with Mozilla Thunderbird..
http://kb.mozillazine.org/Disappearing_mail

I was quite upset by this..because emails are very important contents and i cant imagine that emails can just dissappear just because i encounter a sudden restart

So i have decided to revert back to Microsoft Outlook

Using Database Constraint or Business Logic for data integrity

Written on 5:52 AM by ronald

Recently, i send an email to a DBA asking some question about whether should we use database constraint or business logic.

This is the conversation i had with her.

Me :
Should we use database constraint or business logic to validate data integrity?

DBA :
I think you should try database constraints as much as possible. Only if there are special or

complicated conditions hard to set data base constraints for that you use business logic. And then

you also have to consider the different entry points in the application. Let’s say in one screen,

a remarks field should be 56 characters. But in another screen, a remarks field must be 100

characters. In that case you set the length to the widest in the database and use business logic

to validate.

Me :
Just to add on, why we avoid using database constraint or foreign keys in our scheme design.

We may have problem archiving data if there are constraints violation
We shouldn't rely on database constraint but instead should use programming logic to execute queries such as removal of child records when parent records is being removed

DBA :
From experience, programmers are highly unreliable. I prefer that the database constraint is there to ensure that a fatal mistake is not made, esp. when the parent child relationship or some other rule HAS to be followed.



There should not be constraints violation anyway, if the constraints are necessary. If there are, it means the data is dirty, so it is time for a clean up.