Необходимо добавить предложение where в адаптер таблицы

У меня есть настройка набора данных с помощью мастера Visual Studio, и в форме есть эта строка кода:

Me.StudentsTableAdapter.Fill(Me.StudentsDataSet.Students)

Оператор select для адаптера таблицы:

SELECT ID, Forename, Surname, AddressLine1, AddressLine2, City, State, PostCode, 
       PrimaryPhone, SecondaryPhone, DateOfBirth, email, Grade, GPA, ParentID 
  FROM Students

Можете ли вы сказать мне, как добавить предложение Where, используя кодирование для этого адаптера таблицы?


person Emad-ud-deen    schedule 28.02.2012    source источник


Ответы (2)


Вы можете попробовать использовать объект SQLCommand, например:

Dim cmd As New SqlCommand("SELECT * FROM Students WHERE ID=@ID", myConnection)
cmd.Parameters.AddWithValue("@ID", 5)
Me.StudentsTableAdapter.SelectCommand = cmd
Me.StudentsTableAdapter.Fill(Me.StudentsDataSet.Students)
person LarsTech    schedule 28.02.2012
comment
Я попробовал код, но получаю сообщение об ошибке в .SelectCommand, в котором говорится, что «SelectCommand» не является членом StudentTableAdapter. Как сделать его членом адаптера таблицы? - person Emad-ud-deen; 01.03.2012
comment
@Emad-ud-deen Тогда какой у тебя StudentsTableAdapter? SelectCommand — это свойство получения или установки объекта SqlDataAdapter. Ваша ошибка говорит мне, что это не так. - person LarsTech; 01.03.2012
comment
Я не создавал адаптер таблицы вручную. Вместо этого он был создан для меня, когда я перетащил столбец из источника данных в форму. Я просто удалил навигатор привязки и привязал элементы управления из окна свойств и построил свой код вокруг этого. - person Emad-ud-deen; 01.03.2012

это мой код из университетского проекта.

query = SELECT icode, category, iname, weight, price, pic, qty FROM   dbo.item_entry where(iname=@iname)

код:

private void comboBox2_SelectedIndexChanged(object sender, EventArgs e){
    this.item_entryTableAdapter.FillByItem(this.jewllary_DatabaseDataSet.item_entry, comboBox2.Text);
}
person Arpita Magare    schedule 20.10.2015