Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Я чего-то не понимаю :( / 5 сообщений из 5, страница 1 из 1
11.05.2003, 12:35
    #32156961
vladuha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я чего-то не понимаю :(
Доброе время суток многознающий олл!

Не понимаю я вот чего: есть файл vtbpp.dbf, в нем определно два поля NUMDOC типа N(6,0) и поле POST типа N(1,0), подсоединяюсь к этой таблице я через TADOConnection, через TADODataSet делаю запрос select NUMDOC, POST from vtbpp и получаю, что :
qrSelectNUMDOC: TFloatField;
qrSelectPOST: TSmallintField;
Почему??? А мне позарез надо, чтобы POST тоже было float!!!
Я уже закрывал TADOConnection, в DataField Editor удала все поля и добавлял заново, пытался напрямую менять типа поля в определении класса, но результат один и тот же -- первое поле вопринимается как float, а второе только как SmallInt. У кого есть свежая мысль, поделитесь, плиз.
...
Рейтинг: 0 / 0
11.05.2003, 13:23
    #32156975
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я чего-то не понимаю :(
Код: plaintext
1.
select NUMDOC, cast(POST as numeric( 1 , 0 )) as Post  from vtbpp 
...
Рейтинг: 0 / 0
11.05.2003, 13:36
    #32156983
vladuha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я чего-то не понимаю :(
cat2 ты будешь смеяться: сделал новый TADOdataSet, загнал в него твой запрос и получил: [Microsoft][драйвер ODBC dBase] Ошибка синтаксиса (пропущен оператор) в выражении запроса 'cast(POST as numeric(1,0))'. :)) Мне кажется, что тут дело не в запросе, а коннекте, я использую Window XP+Delphi 5.0 +SQL Server 2000. Буду разбираться дальше.
...
Рейтинг: 0 / 0
11.05.2003, 13:48
    #32156989
vladuha
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я чего-то не понимаю :(
Отвечаю сам себе :) Загадочная все же Дельфи вещь - стоило только, удалить старый TADOdataSet, добавть новый TAdoDataSet и в новый добавить запрос select NUMDOC, POST from vtbpp и через редактор полей добавить поля, как тут же поле POST стало типа float. :)) Вот и пойми :)
...
Рейтинг: 0 / 0
11.05.2003, 20:27
    #32157052
Cat2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я чего-то не понимаю :(
Меня такое поведение с DBF тоже сильно удивило, но поскольку я с этим форматом практически не работаю, то поверил на слово. Странно, что не сработал Cast. Наверное надо было не Numeric, а Float.

Действительно, делов коннекте. Такие заморочки часто бывают, гогда пареллельно пишешь код и меняешь структуру. В таких случаях надо
1. Если создано статическое поле, то удалить его из описания полей датасета
2. Сделать для датасета Activе - true, а затем Activе - false
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Я чего-то не понимаю :( / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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