2011-11-29 31 views
0

有人可以建议当网站使用数据集的.xsd文件时检索标量值的最佳方法吗?我有这样的网站,在我承诺插入任务之前,我需要验证重复项。使用.xsd数据集对象检索标量数据?

回到当天,人们只需实例化一个新的连接和命令对象,并通过BLL/DAL运行查询 - 简单的工作。使用Studio为您创建的预先打包的xsd文件,我不知道如何执行此操作。

感谢,

Risho

回答

0

首先,我会推荐给你的数据库中添加一个唯一索引,以确保它是不可能创建副本。

要回答你的问题:你可以查询,添加到自动创建的TableAdapter:

From MSDN

的TableAdapter与多个查询

与标准数据适配器,表适配器可以包含多个 查询以填充其关联的数据表。只要 每个查询返回的数据符合与其关联的数据表相同的模式,您就可以根据应用程序的要求为TableAdapter定义多个 查询。这样可以加载满足不同标准的数据。例如,如果您的应用程序包含客户的表格 ,则可以创建一个查询,该查询将填充表格,每个 客户的名称以特定字母开头,另一个查询 填充表格,所有客户位于相同状态。到 用给定状态的客户填充Customers表,您可以创建 FillByState查询,该查询采用状态值的参数:SELECT * FROM Customers WHERE State = @State。您通过调用FillByState方法并传入参数值(如 this:CustomerTableAdapter.FillByState(“WA”))来执行查询。

除此之外返回相同的模式作为 TableAdapter的数据表,的数据查询,您可以添加返回标 * (单)值的查询。 *例如,即使返回的数据不符合 到表格模式,创建返回 客户计数(SELECT客户的SELECT计数(*))的查询对 CustomersTableAdapter有效。

+0

感谢您的回复。该网站已经在这方面使用tabel适配器,这是驱动我creazy。我继承了这个网站,并且在这方面遇到了困难。正如我所指控的,我习惯于手工编写BLL和DAL。该表具有唯一索引,但它不是我需要验证重复项的特定字段。表格会根据打印机记录打印机墨粉。打印机是主键,并且有调色剂黑色,黄色等,包括诸如打印机制造商之类的其他信息。用户可以添加新的制造商,我需要确定制造商是唯一的。 – Risho

+0

...续。我遇到了插入/更新任务的问题,因为当使用多个join ed查询时,apperantly adapter无法处理更新/插入。所以为了完成这项工作,我将制造商包括在我的碳粉表中。我意识到这违反了norlmalization规则... – Risho