19.07.2019, 04:03 [+3 UTC]
в нашей команде: 3 748 чел. | участники онлайн: 0 (рекорд: 21)

:: РЕГИСТРАЦИЯ

задать вопрос

все разделы

правила

новости

участники

доска почёта

форум

блоги

поиск

статистика

наш журнал

наши встречи

наша галерея

отзывы о нас

поддержка

руководство

Версия системы:
7.77 (31.05.2019)
JS-v.1.34 | CSS-v.3.35

Общие новости:
28.04.2019, 09:13

Форум:
18.07.2019, 12:26

Последний вопрос:
19.07.2019, 02:41
Всего: 149939

Последний ответ:
18.07.2019, 12:04
Всего: 258705

Последняя рассылка:
17.07.2019, 22:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
04.03.2010, 09:34 »
Бескровный Дмитрий Петрович
Отличный ответ! Всё, что нужно я узнал, а по материалам статьи даже ответил на вновь возникшие вопросы. Большое спасибо! [вопрос № 177039, ответ № 259869]
15.12.2010, 01:17 »
Савенков Михаил
Написано подробно и ответили очень быстро smile [вопрос № 181370, ответ № 264785]
20.12.2015, 21:47 »
nal_0786
Вот это дааа. спасибо огромное!!!! прям не ожидал что это возможно решить!!!! ОГРОМНОЕ СПАСИБО!!!! [вопрос № 188463, ответ № 273092]

РАЗДЕЛ • .NET Framework / C# / Java

Создание программ на программной платформе .NET Framework и языках С# и Java.

[администратор рассылки: Коцюрбенко Алексей Владимирович (Модератор)]

Лучшие эксперты в этом разделе

solowey
Статус: Практикант
Рейтинг: 205
Зенченко Константин Николаевич
Статус: Старший модератор
Рейтинг: 196
Коцюрбенко Алексей Владимирович
Статус: Модератор
Рейтинг: 141

Перейти к консультации №:
 

Консультация онлайн # 143244
Раздел: • .NET Framework / C# / Java
Автор вопроса: Штыхов Антон Евгеньевич
Отправлена: 06.09.2008, 22:53
Поступило ответов: 1

Небольшой вопрос по ADO.NET: как добавить запись в таблицу?
Составляем запрос, а дальше что!??

Программа на С#
Зарание благодарен!!! smile

Последнее редактирование 06.09.2008, 23:58 [неизвестный]

Состояние: Консультация закрыта

Ответ # 228729 от Челноков Виктор Альбертович

Здравствуйте, Штыхов Антон Евгеньевич!
private static void SqlCommandPrepareEx(string connectionString)
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
SqlCommand command = new SqlCommand(null, connection);

// Create and prepare an SQL statement.
command.CommandText =
"INSERT INTO Region (RegionID, RegionDescription) " +
"VALUES (@id, @desc)";
SqlParameter idParam = new SqlParameter("@id", SqlDbType.Int, 0);
SqlParameter descParam =
new SqlParameter("@desc", SqlDbType.Text, 100);
idParam.Value = 20;
descParam.Value = "First Region";
command.Parameters.Add(idParam);
command.Parameters.Add(descParam);

// Call Prepare after setting the Commandtext and Parameters.
command.Prepare();
command.ExecuteNonQuery();

// Change parameter values and call ExecuteNonQuery.
command.Parameters[0].Value = 21;
command.Parameters[1].Value = "Second Region";
command.ExecuteNonQuery();
}
}


Консультировал: Челноков Виктор Альбертович
Дата отправки: 07.09.2008, 15:43

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 143244
Штыхов Антон Евгеньевич

# 1

= общий = | 07.09.2008, 13:24

Написал:


public void AddSolution(string temp,
string name, decimal val)
{
string SQL_String =
"SELECT INTO Problems_Desposition_Table (Name, Desposition, Steps)" +
"VALUES(" + name + "," + temp + "," + val +")";
OleDbCommand comm = new OleDbCommand(SQL_String, conn);

conn.Open();
int rows = comm.ExecuteNonQuery();
conn.Close();
}


Копм указывает на

int rows = cmd.ExecuteNonQuery();

и пишет:

The SELECT statement includes a reserved word or an argument name that is misspelled or missing, or the punctuation is incorrect.

Что не так

Штыхов Антон Евгеньевич

# 2

= общий = | 08.09.2008, 08:02

Исправил на:

public void AddSolution(object temp,
            string name, decimal val)
        {
            string SQL_String =
                "Insert INTO Problems_Desposition_Table (Name, Desposition, Steps)" +
                "VALUES( @name , @temp , @val)";
            OleDbCommand comm = new OleDbCommand(SQL_String, conn);

            conn.Open();
            int rows = comm.ExecuteNonQuery();
            conn.Close();
        }


Комп ругается на туже строку:

[quote]No value given for one or more required parameters.[/quote]

Я отлаживал во всех переменнных корректные числа! Что делать

В таблице есть правда ещё один столбец(ключевой) Num о это просто счётчик!

Челноков Виктор Альбертович

# 3

= общий = | 08.09.2008, 08:39

1. Необходимо описать параметры например
SqlParameter idParam = new SqlParameter("@name", SqlDbType.Text, 100);
2. Присвоить значение каждому параметру

idParam.Value = "пример";

3. Добавить параметр к объекту комманд

comm.Parameters.Add(idParam);


И тогда получим:
public void AddSolution(object temp, string name, decimal val)
{ string SQL_String = "Insert INTO Problems_Desposition_Table (Name, Desposition, Steps)" + "VALUES( @name , @temp , @val)";

OleDbCommand comm = new OleDbCommand(SQL_String, conn);
SqlParameter idParam = new SqlParameter("@name", SqlDbType.Text, 100); // обратить внимание на назначение правильных типов параметров
//перечислить все параметры
idParam.Value = "пример";
//перечислить все параметры
comm.Parameters.Add(idParam);
// добавить все параметры к объекту comm
command.Prepare();

conn.Open();
int rows = comm.ExecuteNonQuery();
conn.Close();
}

Штыхов Антон Евгеньевич

# 4

= общий = | 08.09.2008, 08:49

Ясно! Только у меня база данных Access! Использывать SqlParameter или есть что-то другое!

2. Что такое idParam.Value ?? Вводимая величина!? Но ведь она у меня в переменной!

3ю Это для всех переменных прописывать надо!?

Челноков Виктор Альбертович

# 5

= общий = | 08.09.2008, 09:03

Да извините описался описался
idParam.Value="ывы" - присвоение значения параметру

Описывае все три параметра(толко уточните их типы)
OledbParameter idParam1 = new OledbParameter("@name", DbType.Text, 100);
OledbParameter idParam2= new OledbParameter("@temp", DbType.Text, 100);
OledbParameter idParam3 = new OledbParameter("@val", DbType.Int, 0);

Присваиваем им значения
idParam1.Value="ывы"
idParam2.Value="ывы"
idParam3.Value=8

Добавляем к объекту комманд
comm.Parameters.Add(idParam1);
comm.Parameters.Add(idParam2);
comm.Parameters.Add(idParam3);

Штыхов Антон Евгеньевич

# 6

= общий = | 08.09.2008, 09:35

Написал:

 public void AddSolution(string temp,
            string name, decimal val)
        {
            string SQL_String =
                "Insert INTO Problems_Desposition_Table (Name, Desposition, Steps)" +
                "VALUES( @name , @temp , @val)";
            OleDbCommand comm = new OleDbCommand(SQL_String, conn);
            OleDbParameter param1 = new OleDbParameter("@name", OleDbType.Text, 50);
            param1.Value = "Parametr";
            OleDbParameter param2 = new OleDbParameter("@temp", OleDbType.Text, 100);
            param2.Value = "Parametr2";
            OleDbParameter param3 = new OleDbParameter("@val", OleDbType.SmallInt, 0);
            comm.Parameters.Add(param1);
            comm.Parameters.Add(param2);
            comm.Parameters.Add(param3);
            comm.Prepare();

            conn.Open();
            int rows = comm.ExecuteNonQuery();
            conn.Close();
        }




Теперь комп указывает на вызов функции:
No value given for one or more required parameters.

Челноков Виктор Альбертович

# 7

= общий = | 08.09.2008, 11:14

А третий параметр объявляется, а где присвоение значения
OleDbParameter param3 = new OleDbParameter("@val", OleDbType.SmallInt, 0);

param3.Value = 3; например так

Штыхов Антон Евгеньевич

# 8

= общий = | 08.09.2008, 12:41

Cпасибо Огромное!!!!!!! smile smile smile

Челноков Виктор Альбертович

# 9

= общий = | 08.09.2008, 14:19

smile

 

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14840 сек.

© 2001-2019, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.77 от 31.05.2019
Версия JS: 1.34 | Версия CSS: 3.35