powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Access + Decimal = type mismatch
8 сообщений из 8, страница 1 из 1
Access + Decimal = type mismatch
    #35281294
Valadimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Си шарп, Access. Проблема при insert-e поля decimal, когда в региональных настройках винды стоят точки в качестве разделителя целой и дробной части. Несоответствие типов данных.
Тип в базе тоже decimal.

Вот код:

string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"test.mdb\";";
OleDbConnection connection = new OleDbConnection(ConnectionString);

string insertcommand = "INSERT INTO Test (DecimalField, Id) VALUES (?, ?)";
OleDbCommand command = new OleDbCommand(insertcommand, connection);

OleDbParameter param = new OleDbParameter("@DecimalField", 999.99M);
param.DbType = DbType.Decimal;
command.Parameters.Add(param);
command.Parameters.Add(new OleDbParameter("@Id", Guid.NewGuid()));
connection.Open();
command.ExecuteNonQuery();
string exep = ex.Message;
connection.Close();

Я так понимаю нужно изменить локаль для Access, например через connectionString, но как пока не выяснил. Может кто сталкивался?
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281324
Фотография SQL_Lamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы с горя на ADO forum перешли?
Я ж говорю, попробуйте при вставке конвертнуть decimal в string, изменить разделитель
и попытаться вставить строку в поле decimal - Access это допускает, сам так делал, только с double
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281396
Думающий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В парметр переменную типа currency передавайте и все
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281456
валадимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кстати да currency тоже пробовал с ним все нормально. Но вот что начальник скажет в понедельник узнаем :)
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281669
валадимир
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тип поменять не проблема, но вот вопросы такие есть:
Почему именно проблемы с decimal?
Почему ошибка возникает именно тогда, когда разделитель и для чисел и для денежных единиц стоит ","?
Почему когда я делаю GetSchema() - возвращается инвариантная культура?
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281960
Николай Ефремов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У OleDnCommand параметры Precision и Scale устанавливать не пробовали? Вроде должно помочь.
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281984
Valadimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.aspnetmania.com/Forums/ForumMessage/11563.html
...
Рейтинг: 0 / 0
Access + Decimal = type mismatch
    #35281986
Фотография SQL_Lamer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valadimirhttp://www.aspnetmania.com/Forums/ForumMessage/11563.html

ну а я вам что говорил? :)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Access + Decimal = type mismatch
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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