2

見積もりと製品構成を保持するデータベースがあります。見積もり用のヘッダーテーブルが1つあり、その下に1つ以上の構成が存在する場合があります。構成内には、製品とハードウェアを1対1および1対多の色合いで定義するテーブルがあります。顧客が見積もりの​​いずれかの側面を変更したい場合は、現在の見積もりを凍結し、別の見積もりを別の見積もり番号で作成する必要があります。見積もり番号は、ヘッダーテーブルの自動IDフィールドです。

最初は機能する長蛇のクローンスクリプトを作成しましたが、追加の列が必要になったため、クローンスクリプトはすぐに古くなりました。これにより、販売サポートは見積もりを手作業で複製する必要があり、間違いにつながることがよくあります。

各テーブルのすべての列を明示的に指定する必要がなく、関係を簡単に定義し、新しいIDを伝播するような方法で、これにどのようにアプローチしますか?

4

1 に答える 1

2

あなたはできる

SELECT * 
INTO #tableN
FROM tableN
WHERE QuotationID = @OldQuotationID

関連する各テーブルの一時テーブルに変換するため、各テーブルの正確なスキーマを知る必要はありません。次に、新しいヘッダー行を作成し、新しいQuotationId値をキャプチャした後、これらのテーブルを新しいQuotationIDで更新し、元のテーブルに挿入し直すことができます。

于 2012-08-30T04:14:42.977 に答える