0

テーブルの 1 つで挿入を実行すると、上記のエラーが発生します。

AdmFormData には、FormType、KeyField、および FieldName の 3 つの主キーがあります。

私が間違っていることを誰かが知っていますか?

    set rowcount 0
    go



    INSERT INTO  AdmFormData
    (
    [FormType]
      ,[KeyField]
      ,[FieldName]
      ,[AlphaValue]
      ,[NumericValue]
      ,[DateValue]
    )
    SELECT
     'CUS' AS [FormType]
      ,Customer as [KeyField]
      ,'SAL001' AS [FieldName]
      ,[Customer Territory] AS [AlphaValue]
      ,NULL AS [NumericValue]
      ,NULL AS [DateValue]
    FROM
    dgl_territory a
    LEFT OUTER JOIN AdmFormData f
    on f.FormType = 'CUS' and f.FieldName = 'SAL001' and f.KeyField = a.Customer
    WHERE f.FormType IS NULL
4

1 に答える 1

0

AdmFormDataエラーは、しようとしている主キーを持つテーブルにレコードが既にあることを示していますINSERT

テーブルの主キーに含まれているFormType, KeyField and FieldName場合は、値を持つレコードが既にあります。

'CUS' AS [FormType]
,Customer as [KeyField]
,'SAL001' AS [FieldName]

同じ主キーを持つ複数のレコードを持つことはできません。それらは一意です。

于 2012-09-10T10:15:49.527 に答える