Subject info on database design

Jason forwarded me to this list, so here I am:

It is clear I've problems in my database design. And this is the
first time I've contact with C/S databases, I hope some people can
give me some hints.

1. I need to make a program which allows to make appointments
automatically, but certain dates have to be avoided. I thought on
storing these dates in a table. Now, what is the best primary key for
such a table? I thought to use a date key for this, but it looks like
people don't find this such a good idea, why? A date key in this case
is always unique. If I would use an autoincrement, then this value
will at a certain time get it's maximum. Yes I know... it will take a
long time and perhaps never reaches it's maximum, but with a date as
key this will never happen. So why is using a date key not a good

2. What is the best, using a TIBOTable or a TIBOQuery (with select *
form table). Speed?

3. What is best in speed, using a storedprocedure to update a table
or a query?

4. I need to iterate through a table, but not visual, how can I do
this best, concerning speed?

Thanks in advance,