RedPandinus Ответов: 2

Как объединить 3 условия в 1 запросе


Привет,

Как соединить 3 условия в 1 запросе, чтобы messagebox выскочил и сказал, что 3 условия заполнены ?

If NewData Then
        strSQL =
            " SELECT Count(tblContact.Fullname, ) AS CountFullname FROM tblContact " &
            " WHERE Fullname = " & "'" & txtFullname.Text & "'"


" SELECT Count(tblContact.Phone, ) AS CountPhone FROM tblContact " &
     " WHERE Phone = " & "'" & txtPhone.Text & "'"



" SELECT Count(tblContact.email, ) AS Countemail FROM tblContact " &
     " WHERE email = " & "'" & txtemail.Text & "'"


Что я уже пробовал:

Форумы, пункты, примеры кодов.

2 Ответов

Рейтинг:
9

MadMyche

Я также исправил вашу проблему с SQL-инъекцией.... Возможно вам придется скорректировать синтаксис так как все мои IDE заняты поэтому я пишу это напрямую

StringBuilder sb = new Stringbuilder("SELECT ");
sb.AppendLine("NameCount = (SELECT Count(1) FROM tblContact WHERE FullName = @FullName)");
sb.AppendLine(", PhoneCount = (SELECT Count(1) FROM tblContact WHERE Phone = @Phone)");
sb.AppendLine(", EmailCount = (SELECT Count(1) FROM tblContact WHERE Email = @Email)");


string strSQL = sb.ToString();
SqlCommand cmd = new SqlCommand(strSql, "connection");
cmd.Parameters.AddWithValue("@FullName", txtFullname.Text);
cmd.Parameters.AddWithValue("@Phone", txtPhone.Text);
cmd.Parameters.AddWithValue("@Email", txtemail.Text);


Рейтинг:
20

Richard MacCutchan

Это в основном та же проблема, что и Как добавить 3 условия IF на досках обсуждений VB - Visual Basic[^И я отмечаю, что вы все еще не используете параметризованные запросы, поэтому ваша база данных все еще подвержена риску повреждения или чего-то еще хуже.