【发布时间】:2014-02-21 14:13:21
【问题描述】:
我目前正在尝试根据某个 ID 号在表单加载时填写表格适配器。
已经提供的代码行用表中的所有记录填充表适配器。
但是,我只想要记录where ID = 1
我正在使用带有 SQL Server 的 VB 2012
有人可以解释一下我是怎么做的吗?
原来的代码行是:
Me._6OrdersTableAdapter.Fill(Me.Online_Portal_Solutions_DatabaseDataSet._6Orders)
当我尝试在数据集设计器中向表中添加新查询时,我收到以下警告消息:(不太清楚这意味着什么:
“新的命令文本返回的数据与主查询的模式不同。如果不需要,请检查查询的命令文本。”
我添加的查询如下:
SELECT OrderNoID, CustomerID, CollectionDate, DeliveryDate
, ServiceType, PostalZone, DeliveryAddress, Product
, HazardType, Weight, NoOfPallets, OtherNotes
FROM [6Orders]
WHERE (HaulierID = 1)
我调用了查询fillhaulierjkp,把原来的代码行改成如下:
Me._6OrdersTableAdapter.fillhaulierjkp(Me.Online_Portal_Solutions_DatabaseDataSet._6Orders)
然后,当我运行应用程序时,页面加载时出现此错误:
“未能启用约束。一行或多行包含违反非空、唯一或外键约束的值。”
我只想用 select 语句填充表适配器,但我希望用户能够使用绑定导航器浏览记录
【问题讨论】:
-
发布一些相关代码,显示您到目前为止所尝试的内容,然后我们可以尝试修复必要的部分以仅获取 ID = 1 的记录。
-
@har07 我已经提供了我在问题中尝试过的内容;你能告诉我我做错了什么吗?
标签: .net sql-server vb.net ado.net tableadapter