0

関連するタイトルを本当に考えることはできません:-(

製品の売上を登録するプログラムをC#で作成しました。私のデータベースの中には2つのテーブルがあります。1つは「Product」と呼ばれ、もう1つは「Customer」と呼ばれるテーブルです。'Product'にはCustomerIdが含まれ(2つのテーブルを結合できるように)、customerテーブルには顧客に関連するデータが含まれます。

私のプログラムのユーザーが製品の詳細と顧客の詳細を入力しなければならないポイントがあります。しかし、データベースの顧客テーブルに顧客がすでに存在するかどうかをどのように知ることができますか?すでに顧客テーブルにあるすべてのレコードを読み取り、それらを新しい顧客の詳細と比較する必要がありますか?それは私にはちょっと悪意のあるようです。

(重複を防ぐために、データがすでに入力されているかどうかを知る必要があります)

4

2 に答える 2

2

重複を許可しない制約をテーブルに設定してから、データを挿入してみてください。すでに存在する場合、サーバーは挿入を許可せず、通知します。

使用しているデータベースに関する情報が提供されていないため、どのように通知されるかを説明できません。通常、スローされるのは例外です。

于 2012-10-05T23:16:38.513 に答える
-1

適切なwhere句を指定して適切なselectステートメントを発行し、データにすでに一致する行があるかどうかを確認できます。

顧客IDがデータベース自体によって生成されていない場合(つまり、顧客の詳細をデータベースに入力するときに入力するものである場合は、次のようなselectステートメントを発行できます。

SELECT * FROM Customer WHERE CustomerId = <Customer's ID>

ただし、顧客IDがデータベースによって生成される場合は、where句を変更して、重複しないようにする必要のあるフィールド全体で機能するようにする必要があります。

于 2012-10-05T23:20:42.893 に答える