As you said, Certlerant, larger companies often have in-house legal departments.
Most small business owners use a local attorney who specializes in corporate law on a retainer basis. These lawyers do not work exclusively for one company, but rather for their individual firms or practices.
A company should select one attorney or practice to represent them in business matters. This way, a lawyer becomes very familiar with the inner workings and legal and financial history of a business and is ready to represent it when needed.