С Новым годом! Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 271
1

Подскажите как правильно организовать запрос с параметром в sql

07.03.2019, 10:21. Показов 1339. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть такой цикл, который подразумевает вставлять каждую итерацию строчку в базу. Но как то не могу понять,как мне сделать это с параметрами синтаксически правильно.
C#
1
2
3
4
5
6
7
8
9
10
11
12
 foreach (var VARIABLE in mass2)
                    {
                        String[] words = VARIABLE.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
                       
                    var a= contactMary.METHODID = Convert.ToInt16(words[0]);
                     var b= contactMary.DESCRIPTION = words[1];
                      var c= contactMary.METHODTYPEID = words[2];
                       var d= contactMary.TEXTDESCRIPTION = words[3];
                        SqlCommand command6 = new SqlCommand("INSERT INTO Class1 SET METHODID="a", DESCRIPTION = "b",METHODTYPEID="c",TEXTDESCRIPTION="d"", connection); // тут компилятор говорит о невалидности кода
                        command6.ExecuteNonQuery();
                    
                   }
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.03.2019, 10:21
Ответы с готовыми решениями:

Подскажите как правильно составить sql запрос
Имеются две никак между собой не связанных табилцы (БД MYSQL), в первой таблице 4 поля и во второй...

Подскажите как правильно написать SQL запрос
Был запрос: UPDATE Т_ТС SET Прим = "ЗАРЕГИСТРИРОВАНО", WHERE Т_ТС.ГосНомер=!!!; Я хочу его...

Правильно организовать SQL-запрос
Добрый день, господа форумчане. Не могу правильно организовать SQL-запрос. Есть 3 таблицы: 1....

Как организовать правильно запрос
Доброго всем. Никак не могу понять, как ЭТО сделать... Есть таблица, есть форма с запросом. Идет...

9
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
07.03.2019, 10:41 2
Помогут параметры.
1
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 271
07.03.2019, 10:47  [ТС] 3
Спасибо я понимаю что параметры, написать правильно как?, Чтобы переменные a, b, c, вставали в запрос, я ни разу параметризованными запросами не пользовался, и все время получаю невыалидность
0
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
07.03.2019, 10:59 4
Мдфв1234,
По ссылке же есть пример.
Как-то так в вашем случае:
C#
1
2
3
4
5
6
7
8
foreach (var VARIABLE in mass2)
{
    String[] words = VARIABLE.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
    SqlCommand command6 = new SqlCommand("INSERT INTO Class1 SET METHODID=@a, DESCRIPTION = @b,  METHODTYPEID=@c, TEXTDESCRIPTION=@d", connection);
    command6.Parameters.AddWithValue("@a", Convert.ToInt16(words[0]));
    //...
    command6.ExecuteNonQuery();
}
Добавлено через 1 минуту
Блин, так ваша команда insert не соответствует синтаксису.
0
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 271
07.03.2019, 10:59  [ТС] 5
дак тоже из мануала, а как правильно?
0
Эксперт .NET
5877 / 4754 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
07.03.2019, 11:02 6
Лучший ответ Сообщение было отмечено Мдфв1234 как решение

Решение

Вот:
SQL
1
INSERT INTO Class1 (METHODID, DESCRIPTION, METHODTYPEID, TEXTDESCRIPTION) VALUES (@a, @b, @c, @d)
Добавлено через 1 минуту
Цитата Сообщение от Мдфв1234 Посмотреть сообщение
дак тоже из мануала
Это синтаксис команды update
0
2 / 2 / 0
Регистрация: 05.12.2013
Сообщений: 271
07.03.2019, 11:03  [ТС] 7
ок, попробую
0
Ищущий знания
11 / 8 / 4
Регистрация: 31.05.2015
Сообщений: 209
07.03.2019, 21:02 8
Такие запросы я использую в своем проекте

C#
1
2
3
4
5
6
7
8
9
10
11
string query = "INSERT INTO НомераИзвещений (Заказы) VALUES ('" + NameOrder + "')";    //
 
 
string paste = "INSERT INTO [" + OrderSet + "] (Дата, ПИ, Обозначение, Наименование, Код, [Причина изменения], Фамилия, Телефон, [Номер извещения], Отдел, UserName, PCname ) VALUES ('"
                            + DateTime.Now.ToString() + "','" + AdvanceNotice + "','" + Designation + "','" + Name +
                            "','" + ErrorCode + "','" + ReasonsOfChange + "','" + Surename + "','" + PhoneNumber +
                            "','" + n.ToString() + "','" + Departament + "','" + Environment.UserName + "','" + Environment.MachineName + "')";
 
 
string Registration = "INSERT INTO [Пользователи] (Фамилия, Имя, Отчество, Логин, Пароль, Телефон, Отдел) VALUES ('" +
                        Surname + "','" + Name + "','" + Fatherland + "','" + Login + "','" + PassWord + "','" + PhoneNumber + "','" + Departament + "')";
Букв много, но порой создать большой запрос приводит к трудностям. Из большого сделать маленькие проще.

Все переменные строго типа string


А тут запрос для экспорта БД
0
Администратор
Эксперт .NET
17697 / 13824 / 5313
Регистрация: 17.03.2014
Сообщений: 28,340
Записей в блоге: 1
07.03.2019, 21:20 9
Felix Felicis, именно так и НЕ нужно делать. Следует использовать параметры. Даценд, уже показал как.
1
Ищущий знания
11 / 8 / 4
Регистрация: 31.05.2015
Сообщений: 209
07.03.2019, 21:31 10
OwenGlendower, попробую на досуге переписать под параметры, посмотрю. Видел такой синтаксис и уже к нему привык.
0
07.03.2019, 21:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2019, 21:31
Помогаю со студенческими работами здесь

Подскажите как правильно организовать работу с БД
Есть класс DBHelper: public class DBHelper extends SQLiteOpenHelper { public static final...

Подскажите как правильно организовать цикл
Есть бд, необходимо вывести товары на вкладку Каталог. Вывожу товары в таблицу, в 1 строке должно...

Подскажите как организовать правильно поиск
Вообщем тема такая имеется у меня таблица она загружается через jQuery. Так как я в js далек пока...

Как правильно организовать авторизацию к MS SQL
День добрый. Прошу помочь советом /ссылкой /статьей / примером. Вопрос заключается в след. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru