Автор | Сообщение |
|
| постоянный участник
|
Пост N: 2827
Зарегистрирован: 12.09.06
|
|
Отправлено: 06.05.13 12:38. Заголовок: Новые типы переменных ?
Подскажите пожалуйста, а с какого времени существуют новые типы данных в базах Харбор/хХарбор ? + AutoInc 4 Auto increment = ModTime 8 Last modified date & time of this record ^ RowVers 8 Row version number; modification count of this record @ DayTime 8 Date & Time I Integer 1, 2, 3, 4 or 8 Signed Integer ( Width : )" },; T Time 4 or 8 Only time (if width is 4 ) or Date & Time (if width is 8 ) (?) V Variant 3, 4, 6 or more Variable type Field Y Currency 8 64 bit integer with implied 4 decimal B Double 8 Floating point / 64 bit binary Не заметил разницы между этими типами (или не понял): + AutoInc 4 Auto increment ^ RowVers 8 Row version number; modification count of this record Кто может разъяснить их применение ? Какой максимальный размер импорта файла для типов: M Memo P Picture B Blob V VarField Не смог записать ни в одно поле файл размером 3198 Мб через утилиту DBedit. Ошибка - Скрытый текст Application Internal Error - c:\clipbin\dbedit.exe Terminated at: 2013.05.06 13:00:49 Неисправимая ошибка 9006: hb_xgrab не может распределить память Called from MEMOREAD(0) Called from _FREAD(0) in \ts\clip50.lib\_EDITMEM.prg Called from USER(0) in \ts\clip50.lib\_EDITMEM.prg Called from (b)EDITMEMO(0) in \ts\clip50.lib\_EDITMEM.prg Called from TEXTEDIT(0) in \ts\clip50.lib\_TEXT.prg Called from EDITMEMO(0) in \ts\clip50.lib\_EDITMEM.prg Called from EDITVARFIELD(1600) in source\dbedit.prg Called from (b)GETCOL(1573) in source\dbedit.prg Called from GETBROWSE(0) in \ts\clip50.lib\_editbro.prg Called from EDITBROWSE(0) in \ts\clip50.lib\_editbro.prg Called from DBMENU(0) in \ts\clip50.lib\_dbmenu.prg Called from MAIN(821) in source\dbedit.prg
| Может что не так делаю ?
|
|
|
Ответов - 158
, стр:
1
2
3
4
5
6
7
8
All
[только новые]
|
|
|
| постоянный участник
|
Пост N: 4455
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.08.15 16:48. Заголовок: Вывожу поле "=..
Вывожу поле "=" или "@" через cValToChar((Alias())->TS) Получаю только "19.08.15" Как правильно выводить ?
|
|
|
|
| постоянный участник
|
Пост N: 795
Зарегистрирован: 17.02.12
|
|
Отправлено: 19.08.15 18:44. Заголовок: Andrey Пробуй: HB_T..
Andrey Пробуй: HB_TSTOSTR HB_TTOC HB_TTOD HB_TTON HB_TTOS HB_STOT HB_STRTOTS
|
|
|
|
| |
Пост N: 5234
Зарегистрирован: 17.05.05
|
|
Отправлено: 19.08.15 21:27. Заголовок: Andrey HB_TSTOSTR (..
Andrey HB_TSTOSTR (HB_DATETIME()) остальное не пробовал , так что пробуй , Сергей верно написал.
|
|
|
|
| постоянный участник
|
Пост N: 4457
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.08.15 23:37. Заголовок: Dima пишет: HB_TSTO..
Dima пишет: цитата: | HB_TSTOSTR (HB_DATETIME()) |
| То что надо !
|
|
|
|
| |
Пост N: 5437
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.12.15 22:43. Заголовок: Получил в логе (у кл..
Получил в логе (у клиента) ошибку 9006 hb_xgrab при создании индекса локально. У себя повторить тот же момент не смог. Правда у меня там косяк был типа index on str(cod,6)+skl_in TAG (zk) где zk:=TMMP+alltrim(left(sys_name,5))+"zwk" а переменная TMMP равна getenv("TEMP")+"\" но у меня не падает зараза Имя тега обрежется (проверил) если задано шибко длинное. Переделал на index on str(cod,6)+skl_in TAG tmp2 , буду наблюдать. PS DBFCDX
|
|
|
|
| |
Пост N: 150
Зарегистрирован: 05.10.06
|
|
Отправлено: 16.04.16 16:22. Заголовок: Попробовал добавить ..
Попробовал добавить в БД тип поля AI + при открытии в ADS выдает ошибка, такой тип ADS не поддерживает?
|
|
|
|
| |
Пост N: 5604
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.04.16 16:54. Заголовок: MIKHAIL Глянь HELP ..
|
|
|
|
| |
Пост N: 151
Зарегистрирован: 05.10.06
|
|
Отправлено: 16.04.16 21:21. Заголовок: Dima пишет: Насколь..
Dima пишет: цитата: | Насколько я понял из сырца тип надо указать как "+" |
| Да, создает, но тип фалов ADSVFP, тип поля при этом определяет как числовой. У меня есть некоторые сомнения, если потом буду на Letodb переводить, будет ли он понимать эти таблицы или лучше не париться а использовать числовое поле и уникальный индекс в DBFCDX ?
|
|
|
|
| |
Пост N: 5605
Зарегистрирован: 17.05.05
|
|
Отправлено: 16.04.16 21:32. Заголовок: MIKHAIL пишет: буде..
MIKHAIL пишет: цитата: | будет ли он понимать эти таблицы |
| я бы проверил , но чую что должен понимать.
|
|
|
|
| |
Пост N: 891
Зарегистрирован: 20.02.11
|
|
Отправлено: 16.04.16 23:00. Заголовок: В ADS есть все тип..
В ADS есть все типы полей. Догадываюсь что AI это автоинкремент В ADS поле называется AUTOINC. Все поддердиваемые типы есть в справе
|
|
|
|
| постоянный участник
|
Пост N: 4866
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.04.16 18:09. Заголовок: Использую в DBFCDX п..
Использую в DBFCDX поле "+" AutoInc. Раньше (ещё в клипере) вёл свой AutoInc через отдельную базу. Хочу переделать. Можно ли как то изменить этот номер ? Нужно проставить свои значения в поле AutoInc.
|
|
|
|
|
| постоянный участник
|
Пост N: 957
Зарегистрирован: 17.02.12
|
|
Отправлено: 24.04.16 19:05. Заголовок: Andrey пишет:Можно л..
Andrey пишет: цитата: | Можно ли как то изменить этот номер ? |
| Поле защищено от записи. Свои значения можно получить в поле создав базу в последовательности старых значений и заполнив "дырки"
|
|
|
|
| постоянный участник
|
Пост N: 4868
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.04.16 19:48. Заголовок: SergKis пишет: Поле..
SergKis пишет: В других базах это поле править можно ! Очень жалко... SergKis пишет: цитата: | Свои значения можно получить в поле создав базу в последовательности старых значений и заполнив "дырки" |
| Да дебилизм получается... У меня ID свой у некоторых заказчиках очень большой есть, типа 2315032. В своё время делал разноску по филиалам и надавал большие ID филиалам. Дырки заполнять не надо, пускай остаются. Со справочниками улиц тоже фигня получается. Лет 15 назад сделал его, переделать на новое поле получается нельзя.
|
|
|
|
| постоянный участник
|
Пост N: 958
Зарегистрирован: 17.02.12
|
|
Отправлено: 24.04.16 20:21. Заголовок: Andrey пишет: У меня..
Andrey пишет: цитата: | У меня ID свой у некоторых заказчиках очень большой |
| Думаю путаешь Autoincrement (+1 с фиксацией в заголовке dbf) и логический ID записи, формируемый какими то алгоритмами.
|
|
|
|
| постоянный участник
|
Пост N: 4869
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.04.16 20:44. Заголовок: SergKis пишет: лог..
SergKis пишет: цитата: | логический ID записи, формируемый какими то алгоритмами. |
| Да вот захотел этот свой логический ID переделать на правильный AutoInc.
|
|
|
|
| |
Пост N: 490
Зарегистрирован: 08.07.06
|
|
Отправлено: 25.04.16 11:21. Заголовок: Думаю, реально запро..
Думаю, реально запросить у разработчиков место хранения инкрементного поля Harbour тут: https://groups.google.com/forum/#!forum/harbour-users После чего двоичным редактором поправить на нужное значение. Либо функция RDDI_*, DBI_* какая-то отвечает за это... Так же стоит обратить внимание на алгоритм работы autoinc полей в случае команды APPEND FROM: в принимающей базе эти поля продолжат наращивать свое значение последовательно, вне зависимости от значения полей источника. Это позволяет исключить ситуацию появления двух одинаковых значений.
|
|
|
|
| постоянный участник
|
Пост N: 1189
Зарегистрирован: 09.10.06
|
|
Отправлено: 25.04.16 23:49. Заголовок: Andrey пишет: Испол..
Andrey пишет: цитата: | Использую в DBFCDX поле "+" AutoInc. Раньше (ещё в клипере) вёл свой AutoInc через отдельную базу. Хочу переделать. Можно ли как то изменить этот номер ? Нужно проставить свои значения в поле AutoInc. |
| Для новых наработок используйте "I:+", 8, например dbCreate( "tablewithai", { { "AI", "I:+", 8, 0 } } ) Тогда и поле менять сможете, и "большой ID" использовать Кстати, через ..опу, можете попробовать старые справочники импортировать.
|
|
|
|
| постоянный участник
|
Пост N: 4871
Зарегистрирован: 12.09.06
|
|
Отправлено: 26.04.16 10:14. Заголовок: Петр пишет: Для нов..
Петр пишет: цитата: | Для новых наработок используйте "I:+", 8, |
| Что за новый тип поля ?
|
|
|
|
| |
Пост N: 5628
Зарегистрирован: 17.05.05
|
|
Отправлено: 26.04.16 10:19. Заголовок: Andrey пишет: Что з..
Andrey пишет: Петр все же описал :) До кучи 2015-02-17 16:35 UTC+0100 Przemyslaw Czerpak (druzus/at/poczta.onet.pl) * src/rdd/dbf1.c + added support for autoincrement fields with counter longer then 4 bytes Warning: if someone created tables with such fields i.e. { "I:+", 8, 0 } after my modification which added support for AutoInc flags in all numeric DBF fields then he should update counters manually using DBS_COUNTER flag. New code uses 64bit counters for such field located in different part of DBFFIELD structure.
|
|
|
|
| постоянный участник
|
Пост N: 4872
Зарегистрирован: 12.09.06
|
|
Отправлено: 26.04.16 10:41. Заголовок: А есть примеры как э..
А есть примеры как это делать ? DBS_COUNTER flag - как его использовать ?
|
|
|
Ответов - 158
, стр:
1
2
3
4
5
6
7
8
All
[только новые]
|
|