|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.08.2007, 15:17 | #1 |
Пользователь
Регистрация: 28.08.2007
Сообщений: 10
|
SQl и поля с длино более 255 символов
Приветствую, уважаемые эксперты!
у меня такая ситуация: имеется файл dbf, в составе полей которого есть поле с длиной более 255 ( так уж заложено у разработчиков). При запросе SQL информации по полю следующему за длинным почему то выводится пустая информация, хотя я знаю, что данные там есть. Каким образом можно вытащить эти данные - естественно с помощью SQL Заранее спасибо за ответ |
29.08.2007, 08:59 | #2 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
в Dbase тоже. Можно использовать поля типа OLE,однако наполнять их можно только в приложении. Delphi напрямую не умеет работать с OLE-полями,но это обходится путем использования потоков. В InterBase Char имеет размер 0-32767 .
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
29.08.2007, 13:42 | #3 |
Пользователь
Регистрация: 28.08.2007
Сообщений: 10
|
Мемо файлов нет, есть только один dbf.
Вопрос не в том, как проектировать поля, а в том как вытащить информацию из существующей БД с помощью SQL. Решения пока не нашел. Если только перебирать записи с помощью компонента Halcyon, но это долгий и некрасивый путь. |
29.08.2007, 16:52 | #4 |
Участник клуба
Регистрация: 07.07.2007
Сообщений: 1,518
|
Совсем не понял вопроса...
select ПОЛЕ from ТАБЛИЦА where.... Прекрасно работает... Кстати, проверь тип поля.. Может там не fkData, а fkCalculated стоит. Последний раз редактировалось _SERGEYX_; 29.08.2007 в 16:54. |
30.08.2007, 11:46 | #5 |
Пользователь
Регистрация: 28.08.2007
Сообщений: 10
|
БД dBaseIV, тип поля Character длина 625 символов, как умудрились разработчики это сделать не знаю, а select работает только не показывает информацию в полях, следующих за этим длинным полем. Вот так.
|
31.08.2007, 05:55 | #6 | |
Форумчанин
Регистрация: 20.06.2007
Сообщений: 270
|
Цитата:
В стандартном dbf длина поля не может превышать 255 символов так как на описание длины поля выделяется всего один байт. У меня случайно завалялась инфа по структуре dbf. IMHO: нормально работать с этим файлом стандартные обработчики dbf файлов не будут. Вся информация в полях, находящихся после этого длинного поля будет смещена. Вам потребуется написать собственный обработчик для этого файла.
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько? (с) Библия. Вольный перевод с древнееврейского. |
|
31.08.2007, 08:46 | #7 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
31.08.2007, 09:55 | #8 |
Пользователь
Регистрация: 28.08.2007
Сообщений: 10
|
2Andrei
Спасибо за инфу!
Вот что интересно - программы dbu.exe и dbview.exe открывают БД без вопросов - все читаемо. Что ж остается использовать Halcyon дабы не привлекать BDE. Еще раз спасибо! |
31.08.2007, 12:51 | #10 |
Пользователь
Регистрация: 28.08.2007
Сообщений: 10
|
Чтож посмотрим
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
СЧЁТЕСЛИ по 2 и более критериям | Gadar | Microsoft Office Excel | 6 | 27.05.2008 09:25 |
Более 4 миллиардов | MAKTE | Общие вопросы C/C++ | 2 | 16.05.2008 20:11 |
stringgrid поместить строку более 255 символов | SeЯgey | Помощь студентам | 2 | 07.05.2008 16:41 |
тип поля для хранения текста > 255 символов | komex | БД в Delphi | 4 | 23.09.2007 12:38 |
массивы более 64 кб | Alar | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 30.10.2006 14:25 |