Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TableAdapter Fill(@Param1) 
:(
    Опции темы
maq
Дата 29.6.2009, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 173
Регистрация: 28.10.2005

Репутация: нет
Всего: нет



Вопрос новичка в C#.
Имеется форма, при ее загрузке в TextBox-сах формы должны быть зачения полей из БД MS SQL, но выводиться только одна запись (зная значение ключевого поля). Т.е. запрос должен быть такой, например, SELECT * FROM Table WHERE t_id = 15. Задавать параметр t_id я не умею. У меня выводится SELECT * FROM Table 
Код

t_TACountries.Fill(dsCount.t_Countries);

и в TextBox-сах отображается 1-ая запись.
Как мне задат параметр?
PM MAIL   Вверх
Partizan
Дата 29.6.2009, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: 18
Всего: 67



maq

Код

public void FillTable(int id)
{
    .....
    string commandStr = "SELECT * FROM Table WHERE t_id = " + id.ToString();
    adapter.Command = new SqlCommand(commandStr, connection);
    adapter.Fill(...);
}


Писал по памяти..возможно не скомпилится сразу...


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
KelTron
Дата 29.6.2009, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 8.10.2006
Где: Красноярск

Репутация: 9
Всего: 38



Если нужен именно параметр (и вообще говоря лучше чтобы это был параметр), то так:

Код

...
string commandStr = "SELECT * FROM Table WHERE t_id = @t_id";
SqlCommand cmd = new SqlCommand(commandStr, connection);
cmd.Parameters.AddWithValue("@t_id", id);

adapter.Command = cmd;
...



--------------------
Тысячами незримых нитей обвивает тебя Закон. Разрубишь одну - преступник. Десять - смертник. Все - Бог.
Эвенгар Салладорский, основатель Школы Тьмы.
PM MAIL   Вверх
Moid
Дата 30.6.2009, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 27.3.2006

Репутация: 2
Всего: 3



Можно написать метод Fill у TableAdapter в *.xsd фале:

К примеру так:

Код

SELECT * FROM Table 
WHERE (t_id = @t_id) and (t_nnn = @t_nnn)

где @t_id и @t_nnn - параметры.


И при вызове Fill нужно просто подставить значения:
Код

t_TACountries.Fill(DataTable_1, 15, "Строковый параметр");


Примерно так  smile 

Это сообщение отредактировал(а) Moid - 30.6.2009, 12:08


--------------------
"Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1063 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.