I'm about to start a database project (my first, so please bear with me

.
Here are my initial design desires:
Multiple tables for data (two, possibly three).
Standard fields (Names, dates, dollar amounts).
Pretty standard stuff there, but here's where it gets tricky, if not impossible. First, I'm an old-school programmer and I don't like wasting space. I'd like to use a small two or three character field as bit-flags. Second, I'd like to allow access to table fields on a user access basis (administrator, secretary, treasurer, user, etc.). Is it possible to (one) have the data server handle the bit-flags (ie. is it possible to do boolean expressions on a char field?) and (two) do SQL databases allow limiting user rights to individual fields? If so, which server do you think would be best suited for this project?
I know I can handle the bit-flags in the program, but the user access would be a bit more tricky, I'd rather the database engine handle that load.
I prefer MySQL, PostgreSQL, or perhaps even Interbase. MS SQL server isn't totally out of the question, but I prefer to do this as cheaply as possible. The application (written in Borland C++Builder) is for keeping track of club membership (dues, fees, etc)
Thanks,
Bill..