powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вывод результата sql-запроса в переменную
21 сообщений из 46, страница 2 из 2
Вывод результата sql-запроса в переменную
    #39640864
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegEgorov11stells2, в чем может быть проблема, теперь всегда выдает ошибку не верен логин или пароль, хотя в sql все работает и запрос выдает 1?
Отлаживать код умеете? Поставьте точку остановки, посмотрите, что возвращается.
Посмотрите, что у Вас в sqlaut. Похоже Вы не верно формируется значение переменной.
Если textBox1, textBox2 - это названия элементов управления, то значения, введенные пользователем - это textBox1.Text и textBox2.Text, соответственно.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640866
OlegEgorov11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

я кажется нашел ошибку, у меня в sql запросе вставлен просто " + textbox1 +", а нужно же "+textbox1.text+"
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640869
OlegEgorov11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA,

да, спасибо,так и есть
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640874
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegEgorov11,

да не за что. Вам следует использовать параметры вместо конкатенации (выше Вам уже писали про возможность SQL-инъекций и простое введение апострофа).

Код: c#
1.
2.
3.
4.
5.
6.
var sqlaut = @"select PWDCOMPARE(@pass, (select [Password] from test.login where Name = @name))";

var command = new SqlCommand(sqlaut, connect);

command.Parameters.AddWithValue("name", textBox1.Text);
command.Parameters.AddWithValue("pass", textBox2.Text);


Вообщем читайте книжки по ADO.NET и отладку приложений .NET.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640929
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegEgorov11теперь всегда выдает ошибку не верен логин или пароль
Самый простой тут ответ - поставте точку останова на строке
Код: c#
1.
 object result = command.ExecuteScalar();


И на следующем шаге вы поймете почем не выполняется условие и уходит на else.

Смотрите что будет после вызова процедуры на сервере, лежать в переменной result.

Я понятия не имею что находится в sqlaut и что, какой тип возвращает процедура.
Не стесняйтесь, выкладывайте sqlaut .

Но, думаю, пройдясь по шагам, Вы сами все поймете.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640936
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2Я понятия не имею что находится в sqlaut и что, какой тип возвращает процедура.
Не стесняйтесь, выкладывайте sqlaut .
Кхм... 21388491
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640941
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,
Я думаю, человек уже разобрался. :)
А на счет, что он хотел этим кодом поиметь - все впереди.
Если возникнут вопросы, подскажем. Я, если честно, вообще не понимаю зачем это всё так. Ну, да пусть учится.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640947
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OlegEgorov11,
Я с MSSQL давно в шарпе не работал, но, можно пофантазировать например так:
Почему я бы не стал использовать
Код: c#
1.
string sqlaut = @"select PWDCOMPARE('" + textBox2 + "', (select [Password] from test.login where Name like '" + textBox1 + "'))";


Потому что сделал бы на стороне сервера функцию с двумя параметрами (пароль, логин), которая бы возвращала что мне надо (хоть булеву логику хоть набор флагов числовых).

второй вариант, ничего не меняя - просто получал бы пароль пользователя по логину и сравнивал, типа такого
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
 public void IsPwd(string slogin, string spwd)
        {
            try
            {
 /* Properties.Settings.Default.StrConnection - это строка подключения на уровне проекта ( проект - свойства - параметры) Ну, или можно где-то в начале класса описать переменную string со строкой подключения 
*/                
                using (SqlConnection connect = new SqlConnection(Properties.Settings.Default.StrConnection))
                {
                    connect.Open();

                    SqlCommand command = connect.CreateCommand();
                    command.CommandType = CommandType.Text;
                    command.CommandText = "select Password from test.login where Name like '" + slogin + "'";
                    if (command.ExecuteScalar().Equals(spwd))
                    {
                        this.DialogResult = DialogResult.OK; // все хорошо, возращаем флаг OK
                    }
                    else
                    {
                        if (MessageBox.Show("Не верен логин или пароль!", "Внимание", MessageBoxButtons.RetryCancel, MessageBoxIcon.Question)
                           == DialogResult.Cancel)
                            this.DialogResult = DialogResult.Cancel; // возвращаем флаг что пароль не веный
                    }
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }


можно еще упрощать и фантазировать
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640950
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2можно еще упрощать и фантазировать
кончай фантазировать. Что тут 3 страницы обсуждать?
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640951
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2skyANA,
Я думаю, человек уже разобрался.
Думаете? Он выше уже написал, что разобрался.
Вы походу не любитель читать все сообщения в коротком топике, даже 4 первых на этой странице
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39640953
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2можно еще упрощать и фантазировать
Можно ещё нормально классы спроектировать, но автор ещё отлаживать не умеет и параметры использовать.
Так что давайте не будем
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641038
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123, skyANA,
Крутизной так и бразжет, ну так идем мимо.
Человеку даны варианты шагов, почва для размышления. Надо это ему или нет - не вам решать.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641072
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2,
вот этот твой пост 21390631 замечательный. А простыни готового кода совсем не нужны.
Удачи!
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641154
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2Petro123, skyANA,
Крутизной так и бразжет, ну так идем мимо.
Человеку даны варианты шагов, почва для размышления. Надо это ему или нет - не вам решать.
Забавный персонаж. Автор уже разобрался, сказал спасибо. А ты припозднился со своими вариантами шагов
Это форум, детка, тут так бывает
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641175
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,
деткой свою маму называй, а тут изволь вежливым быть.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641223
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2skyANA,
деткой свою маму называй, а тут изволь вежливым быть.
Вы, уважаемый, не удосужились топик прочитать. Понять проблему, понять, что она уже решена.
Так что не стоит вещать за вежливость
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641257
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в переменную вводят, а не выводят :)
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641315
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2skyANA,
деткой свою маму называй, а тут изволь вежливым быть.

злые юзеры...., но не обращай внимание, ты интересно пишешь, продолжай!

скажи, вот тут же всё правильно написано, да? ну, чтобы еще и к этому не прицепились

Код: c#
1.
string sqlaut = @"select PWDCOMPARE('" + textBox2 + "', (select [Password] from test.login where Name like '" + textBox1 + "'))";
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641335
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,
Выше автор уже разобрался.
Но очень интересна Ваше мнение - сами то как думаете?
"textBox2" точно не может быть строковой переменной или свойством, только компонент?
ps: Видимо, еще подрасти для троллинга надо, что бы не смешить других.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641349
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stells2Ролг Хупин,
Выше автор уже разобрался.
Но очень интересна Ваше мнение - сами то как думаете?
"textBox2" точно не может быть строковой переменной или свойством, только компонент?
ps: Видимо, еще подрасти для троллинга надо, что бы не смешить других.

вообще-то я спросил о textBox1, ну да ладно
Вам, перед тем как отчитывать юзеров, тоже неплохо бы "подрасти"(?) что бы вас по ни мали.
...
Рейтинг: 0 / 0
Вывод результата sql-запроса в переменную
    #39641366
Фотография stells2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,
А как отличается в этой конструкции textBox1 от textBox2 ? :)
...
Вопрос был - почему не конвентируется переменная, ответ - потому что там, вероятно, DBNull и дан пример обхода ошибки.
На следующую ошибку было предложено пройтись по шагам. Автор благополучно нашел причину сам.
А далее, чисто ради примера, был дан код, на примере исходного авторского, как один из возможных простых и понятных вариантов, и, может чуть интересней.
Мы все учимся, и если человек что-то делает, это отлично. Любая подскака тут только плюсом.
Нашлись "гуру" которых сее ущемило.

Вместо того, что бы, коль такие умные, задаться вопросом - а зачем вообще такая конструкция, которая в общем не имеет смысла, стали умничать.
Любой вопрос на форумах, как правило обрастает кучей страниц рассуждений и флуда, а ответ в редких случаях есть.


Модератор: Для автора вопрос был исчерпан, засим закрыто
...
Рейтинг: 0 / 0
21 сообщений из 46, страница 2 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вывод результата sql-запроса в переменную
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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