powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как составить вопрос с 2 int
6 сообщений из 6, страница 1 из 1
Как составить вопрос с 2 int
    #32891772
alex-nn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как правильно составить запрос

string str = "...SELECT .... WHERE Месяц = '{0}' AND = год '{0}'"

int a = 12;
int b = 4;

this.SqlSelectCommand.CommandText = String.Format(str,a,b) ????????
...
Рейтинг: 0 / 0
Как составить вопрос с 2 int
    #32891787
JRM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JRM
Гость
Код: plaintext
string str = "...SELECT .... WHERE Месяц = '{0}' AND год =  '{1}'"
Наверно, так?
...
Рейтинг: 0 / 0
Как составить вопрос с 2 int
    #32891820
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
string str = "...SELECT .... WHERE Месяц = '{0}' AND год =  '{1}'" 

Это неверно, т.к. конкретные значения параметров не указаны.

Код: plaintext
1.
2.
3.
4.
5.
string str = "...SELECT .... WHERE Месяц = '{0}' AND = год '{0}'"

int a = 12;
int b = 4;

this.SqlSelectCommand.CommandText = String.Format(str,a,b) ????????

По-моему, все ок. Только "Месяц" я бы поменял на "[Месяц]"
...
Рейтинг: 0 / 0
Как составить вопрос с 2 int
    #32891838
JRM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
JRM
Гость
Вот именно, что я указал всего одну строку, которую нужно поменять из предложенного выше кода, чтобы нормально все работало.

А вы, Bigheadman, пытаетесь человека убедить в том, что у него все верно :)
А если подумать - что будет происходит в момент формата строки - значение a=12 вставится вместо {0} - 2 раза, а значение b=4 вообще не подставится в строку!!!
...
Рейтинг: 0 / 0
Как составить вопрос с 2 int
    #32892034
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
...

int Month =12;
int Year =4;

string cmdString = "SELECT * from ... WHERE [Месяц] = @Month AND [Год] = @Year";

SqlCommand cmd = new SqlCommand ( cmdString, ... );

cmd.Parameters.Add( "@Month", Month );
cmd.Parameters.Add( "@Year", Year );

...


--
WBR, Roman S. Golubin
ICQ UIN: 63253392
...
Рейтинг: 0 / 0
Как составить вопрос с 2 int
    #32892611
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JRMА если подумать - что будет происходит в момент формата строки - значение a=12 вставится вместо {0} - 2 раза, а значение b=4 вообще не подставится в строку!!!

Такие ошибки классифицируются как алгоритмические. Честно говоря, я не вникал в логику кода, потому и не заметил этой ошибки.
Вариант от Roman S. Golubin поддерживаю. Но имхо еще лучше вариант с хранимой процедурой. Но эта тема обсуждалась здесь (и не только) многократно. Кроме того существует Microsoft Data Access Architecture Guide, в котором все варианты замечательно расписаны.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как составить вопрос с 2 int
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]