powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / размерность полей numeric в dbf таблице
11 сообщений из 11, страница 1 из 1
размерность полей numeric в dbf таблице
    #34228209
TaReN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста: создаю dbf таблицу определенной структуры.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
string connString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + CurPath + ";Extended Properties=dBASE III;User ID=Admin;Password=";
              OleDbConnection connDBF = new OleDbConnection(connString);
              connDBF.Open();
               OleDbCommand cmd = new OleDbCommand("CREATE TABLE " + FileName + " ("+
                  "Name char(7), " +
                  "Num numeric(10,3) " +
                  ")",
                  connDBF);

Почему в таблице получается "Num" поле размерностью 20 с 5 знаками после запятой??
Хотя по идее должно получиться размерностью 10 с 3 знаками после запятой...

Заранее благодарен за ответ!!!

-=<TaReN>=-
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #34323673
3EJIEHbIu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну например я шаманил (извращался).
Узнал структуру заголовка dbf и руками правил размер полей
Так и не понял как заставить провайдера писать правильные размеры для нумерик :(
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #34324223
Andrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это приколы dbase
юзайте VFP провайдера. там такого не будет.
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #34334611
3EJIEHbIu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Там и структура dbf будет FoxPro шная :(
С замечательным полем NullFlags.
Хотя не разбирался. Может в Extended Properties что нибудь записать и FoxPro шный провайдер будет генерить dbf ы в формате dBase III или IV.
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #34334641
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
3EJIEHbIuТам и структура dbf будет FoxPro шная :(
С замечательным полем NullFlags.
Хотя не разбирался. Может в Extended Properties что нибудь записать и FoxPro шный провайдер будет генерить dbf ы в формате dBase III или IV.Нет, не будет... В лучшем случае формат FOXPLUS, который очень близок к dBase III, но для этого надо выдавать дополнительную команду COPY TO с параметром FOXPLUS...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
размерность полей numeric в dbf таблице
    #38370039
megazoid007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста что то я запутался, у меня в dbf файле поле задано numeric(19,2), какие мне параметры нужно задать в :
Код: c#
1.
2.
OledbCom.Parameters["@price"].Precision = 19;
OledbCom.Parameters["@price"].Scale = 17;


что бы не вылетала ошибка?
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #38370064
megazoid007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в том что как только при передачи начинает заливаться дробное значении вылизает эксепшн, до этого целые значения нормально записываются, это происходит несмотря на то что в дбф задано numeric(19,2) что по формату схоже с дробной частью и параметр типа OleDBType.Numeric с Precision = 19 и Scale = 2, данные хранятся в DataTable в поле типа float
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #38370348
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
megazoid007,

... попробуйте тип параметра (SqlDbType.Decimal, 17), а соответственно .Precision = 19, .Scale = 2 .... ну или поиграйте с этими значениями ...
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #38370698
megazoid007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
carrotik, перепробовал уже достаточно вариантов, без толку. У меня есть подозрение что параметр отправляет в качестве разделителя запятую вместо точки. Может кто знает есть ли какой нить профайлер, трассировщик, что бы отловить то что приложение собирается записать в дбф ?
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #38370840
megazoid007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поставил в качестве типа параметра не OleDbType.Numeric, а OdbcType.Numeric и все заработало ))
...
Рейтинг: 0 / 0
размерность полей numeric в dbf таблице
    #38370843
megazoid007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
megazoid007, в OleDbCommand
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / размерность полей numeric в dbf таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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