1. Использовать в модели Nullable.
2. Да.
Но, ИМХО, я бы присмотрелся к Entity Framework, NHibernate или другим ORM, так как ADO, хоть и работает быстро, но сейчас годится только для проектов на стадии поддержки. Если писать все заново (как я понимаю у вас), то лучше сделать шаг в современность. Из плюсов: значительно меньше нужно писать руками кода по работе с БД, LINQ.
EntityFramework
NHibernate