0

真的想不出一个相关的标题:-(

我用 C# 编写了一个程序来记录产品的销售情况。在我的数据库里面有两个表。一个称为“产品”,另一个表称为“客户”。'Product' 包含 CustomerId(所以我可以连接两个表),而 customer 表包含与客户相关的数据。

我的程序的用户必须输入产品详细信息和客户详细信息。但是我怎么知道一个客户是否已经存在于我的数据库的客户表中呢?我是否必须读出客户表中的所有记录并将它们与新的客户详细信息进行比较?这对我来说似乎有点狡猾。

(需要知道数据是否已经填写,防止重复)

4

2 回答 2

2

对不允许重复的表设置一个约束,然后尝试插入数据。如果它已经存在,服务器将不允许插入它并通知您。

我无法解释它将如何让您知道,因为您没有提供有关您正在使用的数据库的信息。它通常是抛出的异常。

于 2012-10-05T23:16:38.513 回答
-1

您可以只使用适当的 where 子句发出适当的 select 语句来检查是否存在已与数据匹配的行。

如果您的客户 ID 不是由数据库本身生成的(即,当您将客户详细信息输入数据库时​​,您将输入该 ID,那么您可以发出如下选择语句:

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

但是,如果客户 ID 是由数据库生成的,您需要更改 where 子句以跨要确保不重复的字段起作用。

于 2012-10-05T23:20:42.893 回答