There's another downside, too. Chances are, you don't want the TBD supplier to show up in most reports or queries on the data. That means you'll have to remember to exclude "TBD" all over the place, which makes development a little more complicated. Also, "TBD" orders are kind-of-yes, kind-of-no data, something between non-existent and "real". If the boss asks how many outstanding orders there are, you'll have to get him to specify whether that includes some or all of the TBD orders.
When you let vagueness creep into your data, you're ruining your database.
On the subject of referential integrity, there are 2 points of view. The mainframe database administrator, who has to reorg the tables periodically, has a much tougher job if RI is enforced, so they argue against it. But if the data integrity is needed, and you don't use built-in RI, then you have to implement it in program code instead, so the applications people argue to have it in the database. (Plus, if you enforce built-in RI you don't run the risk of erroneous or inconsistent code getting into production. Minor flaws could easily get through testing and not be caught until you hit production volumes, where they can cause hangs.)
In Access, you don't reorg individual tables, you just compact the database, so the DBA's point of view doesn't apply. I always use RI in Access databases, where it's needed. There is a performance hit, yes, but if integrity is needed, you'd get even more of a performance hit from implementing it in code. Rick Sprague