Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];

Вниз

Строковые поля длинй больше 255   Найти похожие ветки 

 
Sergant   (2002-01-12 04:35) [0]

Имеется база DBF, у которой некоторые стринговые поля имеют длину 300. И не спрашивайте меня, как это может быть - я не знаю. При подключении к этой базе через BDE или ADO размер такого поля почему-то 44. При подключении через Apollo все нормально - 300.
Вопрос 1:Как можно корректно открыть такую базу через ADO (не хочу пользоваться BDE)?
Вопрос 2:Как изменить размер и тип поля и запомнить эти изменения?
Заранее благодарю.


 
z0ne   (2002-01-12 11:11) [1]

Не совсем по теме но вот кусок из Clipper Guide, где описано как создавать поля более 255 символов

Character field lengths greater than 255: There are two
methods for creating a character field with a length
greater than 255 digits:

- Specify the field length using both the Field_len and
Field_dec fields according to the following
formulation:

FIELD->Field_len := <nFieldLength> % 256
FIELD->Field_dec := INT(<nFieldLength> / 256)

- Modify the structure of the extended structure
changing the length of Field_len to 5 then specify
the actual field length.
This can be accomplished in DBU.EXE.
Refer to the Database Utility chapter in the
Programming and Utilities guide for more
information.



 
Apollon   (2002-01-13 08:42) [2]

тоже немного в сторону
когда я писал модуль чтения .DBF на паскале, то выяснилось, что FoxPro последних версий не пишет длину поля ( = 0),а вычисляет эту длину по разности смещений полей в записи. 44 = 300 - 256 , наверное переполнение. Видимо MS напоролась на то, за что боролась :) FoxPro отдельно - ADO отдельно, попробуй пайди нормальный драйвер для FoxPro, или перейди с драйвера dBase на FoxPro.


 
Desdechado   (2002-01-13 14:50) [3]

так пользуйся Apollo, еме не нужен БДЕ


 
ValWhite   (2002-01-14 04:52) [4]

Еще можно использовать Halcyon он без БДЕ...


 
Dark   (2002-01-15 21:56) [5]

Прочитал твой вопрос - как в зеркало посмотрел. У меня та же проблема. Только я знаю из-за чего, но нет знаю как устранить. Таблица у тебя скорее всего Clipper`овская. Он поддерживает длинные символьные поля. Не знаю как ADO, но BDE видит только один байт в заголовке таблицы, который отводится под длину поля (по-видимому и ADO тоже), а в Clipper`е их отводится два: первый - под остаток от реальной длины поля минус один или несколько раз по 254, а второй - эти несколько раз по 254. Скорее всего в ADO это тоже не уберешь. Но ты говоришь, что все нормально через Apollo. Тогда может подскажешь, где его можно взять. Позарез нужно!!!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.004 c
7-32355
-=CrazyFish=-
2001-10-10 12:23
2002.02.11
Инфракрасный порт


3-32165
Oleg_EM
2002-01-16 12:17
2002.02.11
>1 update в одном SQL-запросе


1-32269
Ig
2002-01-25 22:25
2002.02.11
Как создать кнопку на основе картинки?


3-32150
Юлик
2002-01-16 11:41
2002.02.11
Фраза where в QUERY


3-32172
vovan13
2002-01-15 18:45
2002.02.11
SQL-запрос на основе другого запроса





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский