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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание запросов к базе, не могу написать запрос по нажатию кнопк 
V
    Опции темы
Deee
Дата 10.4.2009, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте!
стоит Visual studio 2008 express, sql server 2005
на c# написано приложение для просмотра данных из бызы и создание запросов к ней!
на форме стоит textbox (или аналогичный элемент), в котором прописан текст запроса(SQL), по нажатию на кнопку он должен выполниться. 
как реализовать? подскажите пожалуйста.
заранее благодарен!

PM MAIL   Вверх
Partizan
Дата 10.4.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


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

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



Deee, создаёте объект типа SqlCommand и запускаете его метод ExecuteReader


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


Новичок



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

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



Partizan, если не трудно, можете выложить код?
PM MAIL   Вверх
Partizan
Дата 10.4.2009, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


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

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



Deee, 

Код

private static void CreateCommand(string queryString,
    string connectionString)
{
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        connection.Open();

        SqlCommand command = new SqlCommand(queryString, connection);
        SqlDataReader reader = command.ExecuteReader();
        while (reader.Read())
        {
            Console.WriteLine(String.Format("{0}", reader[0]));
        }
    }
}


© MSDN


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


Новичок



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

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



А что значит 
Цитата(Partizan @  10.4.2009,  20:16 Найти цитируемый пост)
while (reader.Read())
        {
            Console.WriteLine(String.Format("{0}", reader[0]));
        }

и где должна быть ссылка textbox? 
я должен нажать на кнопку, а в сетке (dataGridView) должен появиться результат моего запроса.

PM MAIL   Вверх
Partizan
Дата 10.4.2009, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


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

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



Цитата

А что значит 


Deee,  это вывод результатов запроса в консоль построчно

Цитата

и где должна быть ссылка textbox? 


текст из текстбокса подставляется вместо queryString

Цитата

я должен нажать на кнопку, а в сетке (dataGridView) должен появиться результат моего запроса.


Откройте для себя гугль...

http://www.google.ru/search?q=%D0%B8%D1%81...lient=firefox-a


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


Новичок



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

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



Partizan, спасибо, конечно, но некоторые из этих ссылок я читал...
нигде не могу раздобыть пример именно такого кода, чтоб разобраться.
просто делал такую работу на делфи
Код

procedure TForm3.BitBtn1Click(Sender: TObject);
begin
  Query4.close;
  Query4.SQL.Clear;
  Query4.SQL.Add(RE0.text);
  Query4.Open;
end ; 

там это выглядело так
PM MAIL   Вверх
Partizan
Дата 10.4.2009, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


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

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



Deee, это не .NET...."с наскоку" переписать дельфовый код под C#.NET не получится, так что советую для начала подучить матчасть по гуглю и книжкам по ADO.NET 2.0


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


Новичок



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

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



Partizan, спасибо!

Добавлено через 1 минуту и 49 секунд
Кто-нибудь покажите, пожалуйста, код по вышеприведенной проблеме!
 smile Мне очень нужен пример!
заранее благодарю!
PM MAIL   Вверх
KelTron
Дата 11.4.2009, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Код

//... Пихаем эту строку в обработчик события нажатия кнопки...
this.dataGridView.DataSource = ExecuteDataTable(this.textBox.Text, connStr);
//...

private DataTable ExecuteDataTable(string queryString, string connStr) 
{
    SqlConnection conn = new SqlConnection(connStr);
    SqlDataAdapter adapter = new SqlDataAdapter(queryString, conn);
    DataTable table = new DataTable();
    adapter.Fill(table);

    return table;
}


dataGridView - соответственно грид где отображается результат запроса, textBox - содержит текст запроса...


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


Новичок



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

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



KelTron, а если при запуске такую ошибку выдает
Код

Error The name 'connStr' does not exist in the current context    

PM MAIL   Вверх
KelTron
Дата 13.4.2009, 04:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Мог бы догадаться что туда надо передать строку подключения к базе...


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


Новичок



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

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



KelTron, а как выглядит код? там путь к базе??  smile 
буду очень признателен, если поможешь до конца разобраться с моей проблемой!
PM MAIL   Вверх
Rififi
Дата 13.4.2009, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

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



Deee, 
там путь к базе??
1. открываешь браузер (программа, которая показывает Интернет)
2. медленно и печально набираешь www.connectionstrings.com
3. ищешь свою базу
4. нажимаешь 1 (один) раз левой кнопкой мыши на свою базу
5. ищешь текст, где присутствуют слова "... SQL ....", "... .NET Provider ..."
6. глядишь ниже, замечаешь строчку соединения в виде цитаты
7. подводишь курсор мышь к началу строчки соединения
8. зажимаешь левую кнопку мышь и не отпуская кнопку, ведешь курсор до конца строчки. текст должен подкраситься черным цветом.
9. отпускаешь кнопку мышь, нажимаешь на клавиатуре клавишу Ctrl, затем не отпуская Ctrl нажимаешь C
10. открываешь в студии текст программы
11. перед самым первым использованием переменной connStr пишешь: string connStr = "";
12. устанавливаешь курсор мыши между кавычками
13. нажимаешь на клавиатуре клавишу Ctrl, затем не отпуская Ctrl нажимаешь V
14. компилируешь программу
15. если на любом из этапов что-то пошло не так, надо закрыть все программы, в том числе студию и Интернет, и начать всё сначала.
16. если ничего не помогает, принять 200 грамм коньяку.
PM MAIL   Вверх
-Mikle-
Дата 13.4.2009, 22:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

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



Rififi, ну ты и жжешь!!!  smile smile smile 

Добавлено @ 23:04
Deee, прежде, чем начать писать программу под БД (Базу Данных), необходимо освоить всю теорию БД, а также все основы. Задавать вопросы типа "напишите мне и я вам скажу спасибо" не годится, так как пользы и знаний тебе ответы на такие вопросы не принесут, будь уверен. А если тебе НЕ интересно само по себе программирование, но ты по тем или иным причинам должен что-то написать, но сам не можешь, то нужно такие вещи покупать или искать бесплатные готовые. По твоим вопросам у всех (не побоюсь за всех ответить), создалось впечатление человека, два дня назад установившего VisualStudio и пытающегося что-либо сделать не зная основ.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
KelTron
Дата 14.4.2009, 04:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
необходимо освоить всю теорию БД


Звучит ужасающе.. особенно для новичка..)  




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


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

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



Цитата(KelTron @  14.4.2009,  07:43 Найти цитируемый пост)
Звучит ужасающе

Да, это я немного перегнул конечно  smile , для начало достаточно будет базовых основ smile 


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
Deee
  Дата 14.4.2009, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



-Mikle-, 
Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
прежде, чем начать писать программу под БД (Базу Данных), необходимо освоить всю теорию БД, а также все основы.

а то я сам этого не знал!

Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
пользы и знаний тебе ответы на такие вопросы не принесут

наоборот, очень даже помогут, ведь метод аналогии очень хорош при изучении чего-либо!


Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
напишите мне и я вам скажу спасибо

а что благодарность, разве нынче не в моде??


Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
то нужно такие вещи покупать или искать бесплатные готовые

я знаю это! и сколько по-твоему я должен заплатить за ответ на такой "простейший (для вас)" вопрос? 1$ ?



Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
По твоим вопросам у всех (не побоюсь за всех ответить), создалось впечатление человека, два дня назад установившего VisualStudio и пытающегося что-либо сделать не зная основ. 

ну какое у вас (
Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
(не побоюсь сказать)
) возникло впечатление, мне все равно, 
Цитата(-Mikle- @  13.4.2009,  22:57 Найти цитируемый пост)
будь уверен
 smile 







KelTron, респект тебе!!! здорово выручил!!!

Rififi, спасибо огромное! ценный ресурс! конечно немного перегнул, но все равно улыбнуло!
PM MAIL   Вверх
-Mikle-
Дата 14.4.2009, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

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



Deee, Удачи Вам! Приходите еще! Мы всегда рады вам в любое время!

PS:
Не было ни малейшего желания оскорбить Вас, но раз так получилось (как мне показалось), то я видимо должен дать объяснение. Такое впечатление возникло из-за ваших вопросов после того, как вам дали внятный ответ. Я не про вопрос темы, а про остальные:
Цитата(Deee @  10.4.2009,  23:29 Найти цитируемый пост)
и где должна быть ссылка textbox?
 если вы не в состоянии разобраться с этим - значит не имеете ни малейшего представления о том, с чем работаете.
Цитата(Deee @  12.4.2009,  02:59 Найти цитируемый пост)
KelTron, а если при запуске такую ошибку выдает Error The name 'connStr' does not exist in the current context
 если вы до сих пор не знаете что это за ошибка и почему она у вас появилась - то вы установили VisualStudio пару дней назад, не больше (поэтому я сказал "необходимо освоить .... а также все основы").
Цитата(Deee @  13.4.2009,  19:16 Найти цитируемый пост)
KelTron, а как выглядит код? там путь к базе??
 а этот вопрос свидетельствует о том, что у вас в наличии даже БД нету и вы даже не пробовали к ней подключиться (отсяда: "...необходимо освоить теорию БД...").
То, что я сказал "напишите мне и я вам скажу спасибо" уж ни в коем случае не подразумевало каких-либо материальных благ. Я на этом форуме с 2003 года и всегда помогал людям и даже не за "спасибо". Отсутствие последнего, меня тоже не расстраивает, т.к. я осознаю, что меня вообще никто не просит ничего писать, а раз так, то значит я пишу просто, потому что знаю и хочу поделиться. И вот эти слова: "нужно такие вещи покупать или искать бесплатные готовые" относились не к моему желанию (по вашему мнению) получить 1$ за помощь, а к условному предположению "А если тебе НЕ интересно само по себе программирование, но ты по тем или иным причинам должен что-то написать". И последнее, так как тебе глубоко наплевать на мое мнение, то можешь просто игнорировать мои посты, вместо дословного их комментирования и высказываний. И мне очень жаль, что ты еще не в состоянии принимать критику в свою сторону, как основу и фундамент для своего развития. Такое поведение, обычно, присуще очень молодым людям.



--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

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

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


 




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


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

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