powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как добавить запись на сервер
4 сообщений из 4, страница 1 из 1
Как добавить запись на сервер
    #32830631
-ноль-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время суток.
Есть таблица на сервере. Вней два поля:
Test_GetValut
F1 varchar(50)
F2 decimal

OleDbConnection Connection;
string StrConnect = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist...
Connection = new OleDbConnection(StrConnect);
Connection.Open();
....
Вот тут получаю данные:
System.Data.DataRow row_val;
System.Data.DataTable tbl_val = this.val_ds.Tables["ValuteCursDynamic"];
row_val = tbl_val.Rows[0];
string val_name=(string)row_val.ItemArray.GetValue(1);
val_name=val_name.Trim();
decimal v_summ=(decimal)row_val.ItemArray.GetValue(3);
string str_valsum = System.Convert.ToString(v_summ);

Если сделать 2 поля символьные то такая команда выполняется нормально
OleDbCommand Command =
new OleDbCommand("INSERT INTO Test_GetValut(F1, F2) VALUES("+"'"+val_name+"'"+","+"'"+v_summ+"'"+")", Connection);

В отладчике такая строка добавления выглядит так:
"INSERT INTO Test_GetValut(F1, F2) VALUES('R01239', '37,2072' )"
Command.ExecuteNonQuery() выполняется и записи добавляются

Если же F2 сделать decimal и записать
OleDbCommand Command =
new OleDbCommand("INSERT INTO Test_GetValut(F1, F2) VALUES("+"'"+val_name+"'"+", "+ str_valsum +")", Connection);
В отладчике такая строка добавления выглядит так:
"INSERT INTO Test_GetValut(F1, F2) VALUES('R01239', 37,2072 )"
то Command.ExecuteNonQuery() не хочет добавлять данные и ругается.

Может нужно 37.2072 а не 37,2072, в таком случае как привести
decimal к такому виду String.
...
Рейтинг: 0 / 0
Как добавить запись на сервер
    #32831104
Serg****
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужно вместо разделитя ',' поставить разделитель '.'
...
Рейтинг: 0 / 0
Как добавить запись на сервер
    #32831108
Serg****
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-ноль-
Может нужно 37.2072 а не 37,2072, в таком случае как привести
decimal к такому виду String.

ToString().Replace(",",".");
...
Рейтинг: 0 / 0
Как добавить запись на сервер
    #32831689
Por
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Por
Гость
А что мешает правильно описать команду?

Код: plaintext
1.
2.
3.
4.
OleDbCommand Command = new OleDbCommand("INSERT INTO Test_GetValut(F1, F2) VALUES(@Param1,@Param2)", Connection);
Command.Parameters.Add("@Param1", OleDbType.VarChar, 50).Value = val_name;
Command.Parameters.Add("@Param2", OleDbType.Decimal).Value = v_summ;

Command.ExecuteNonQuery()
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как добавить запись на сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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