> Ah, OK. More elegant. But, it still moves responsibility for this > to the application layer, not the database, itself. I can't see > any way of avoiding this :-( Sure, I had a similar problem where newer data is required to specify certain fields, but a legacy application can't provide that data. So there's a flag, that defaults to false, that when set to true means "I know, I know, just shut up and insert the data anyway." The "flag" could be an argument to a stored procedure. In my case it's an actual column in the table, because I wanted to use check constraints and I wanted a record of the fact that the entry is "incomplete" because of its source. -- Scott Ribe scott_ribe@xxxxxxxxxxxxxxx http://www.killerbytes.com/ (303) 722-0567 voice