見積もりと製品構成を保持するデータベースがあります。見積もり用のヘッダーテーブルが1つあり、その下に1つ以上の構成が存在する場合があります。構成内には、製品とハードウェアを1対1および1対多の色合いで定義するテーブルがあります。顧客が見積もりのいずれかの側面を変更したい場合は、現在の見積もりを凍結し、別の見積もりを別の見積もり番号で作成する必要があります。見積もり番号は、ヘッダーテーブルの自動IDフィールドです。
最初は機能する長蛇のクローンスクリプトを作成しましたが、追加の列が必要になったため、クローンスクリプトはすぐに古くなりました。これにより、販売サポートは見積もりを手作業で複製する必要があり、間違いにつながることがよくあります。
各テーブルのすべての列を明示的に指定する必要がなく、関係を簡単に定義し、新しいIDを伝播するような方法で、これにどのようにアプローチしますか?