VB.NET在TableAdapter中更改SQL查询?

时间:2018-10-23 23:25:40

标签: vb.net dataset tableadapter

我很想知道如何在TableAdapter中更改SQL查询。 在旧的VB中是DataEnvironmement,

Set rs = DataEnvironment1.rsQuery
  DataEnvironment1.Commands.Item("Query").CommandText = "SELECT row FROM table"
  DataEnvironment1.Query
set rs = Nothing

我如何在vb.net中做到这一点?

类似这样的东西:

Dim rs As New Databaze2.DataSet1TableAdapters.Query
TableAdapterrs.Adapter.SelectCommand.CommandText = "SELECT row FROM table"

但这不起作用。

我要求这样做是因为我正在寻找某种方式来插入一个复杂的查询。问题可能在于组合的select和两个参数以及仅一列DATUM_CAS。 因为:

  1. 没有这2个参数?命令没问题
  2. 不包括在内选择命令就可以了
  3. 当我替代时?通过正确的date_time命令可以确定

see the screenshot with command and eror

1 个答案:

答案 0 :(得分:0)

您没有在代码中这样做。表适配器是一种类型,每个查询的SQL代码都是该类型的一部分。设计人员几乎可以完成所有修改。您可以通过在解决方案资源管理器中双击DataSet在设计器中打开它。然后,您可以选择一个表适配器并在“属性”窗口中对其进行配置。

如果需要,您可以在此处修改默认查询的SQL代码,但通常来说不应该。如果您需要其他查询,则可以将其他查询添加到同一表适配器。例如,默认查询通常将检索所有行的所有列,然后通过Fill方法执行它。您可以添加一个额外的查询,该查询具有一个WHERE子句以过滤返回的行,并将通过您指定的其他方法执行该查询。例如,如果要按DateOfBirth列进行过滤,则可以将方法命名为FillByDateOfBirth

仅在要更改结果集中的列时才编辑默认查询,这也必须更改关联的DataTable的架构。