5

Outsystems と SQL は初めてです。エンティティがあるバス アプリケーションを作成しようとしています。 ここに画像の説明を入力

同じ名前でルートとバス ID が異なる新しいライダーを作成しようとすると、. データベーステーブル「dbo.OSUSR_6SL_RIDER」の名前フィールドを Cannot insert duplicate key row in object 'dbo.OSUSR_6SL_RIDER' with unique index 'OSIDX_OSUSR_6SL_RIDER_4NAME'. The duplicate key value is (ABC). The statement has been terminated. 確認すると、一意の識別子が設定されていません。誰でもこれで私を助けてくれませんか。

4

3 に答える 3

6

Indexesテーブルの下にあるツリーを開きます。という名前のインデックスが見つかります'OSIDX_OSUSR_6SL_RIDER_4NAME'

そのインデックスをスクリプト化すると、重複する値を作成しようとしているのは、「名前」列の UNIQUE インデックスであることがわかります。

そのインデックスを変更してルート ID とバス ID を含めるか、重複する名前で新しい行を作成する試みを中止する必要があります。

于 2015-12-17T19:14:26.263 に答える
0

正確な複製、つまり同じ Id 値を持つレコードを作成しているようです。それが参照するインデックス名は、db システムによって自動生成されるようです。そのため、必ずしも名前フィールドを参照しているわけではありません。インデックスを見て、そこに含まれるフィールドを見てください。OSIDX_OSUSR_6SL_RIDER_4NAME に Id フィールドが含まれていても驚かないでしょう。

于 2015-12-17T18:54:08.020 に答える