a volte, dipende dall'utilizzo che se ne fa, conviene creare il campo data come long; il formato di inserimento sarà yyyyMMdd. questo permette di fare facilmente i confronti tra le date (>, >=, ecc...), ed essendo comunque un numero, di cercare la corrispondenza "esatta"!
preferisco usare DateTime.DateFormat solo quando devo visualizzare una data..
puoi anche trasformarla in Ticks, che sostanzialmente è un timestamp in formato long, ma poi da questo devi ricavarti la data con DateTime.Date e l'ora con DateTime.Time