Форум: "Базы";
Текущий архив: 2002.10.21;
Скачать: [xml.tar.bz2];
ВнизПроблемы редактирования символьных полей в DBEDIT...!!! Найти похожие ветки
← →
Азазелло (2002-09-30 09:26) [0]Всем доброго времени суток!
Использую Delphi 5 + ADO + MSSQL 2000. Все обновления стоят.
Полная сцепка : TADOConnection->TADODataSet->TDataSetProvider->TClientDataSet->TDataSource.
Символьные поля в MS объявлены как varchar.
Проблема: при попытке редактирования поля с уже введенным значением в DBEDIT-е выдается значение, равное по длинее не введенному значению, а полной длинне, объявленной в varchar.
Пример: Поле объявлено как NameGuest Varchar(20).
Заполняю, посредством DBEDIT - Блюм И.В. - 9 символов.
При взятии на редактирование пытаюсь исправить, Блюм И.В. на Блюм И.Вл. - не дает, якобы превышается длина. На поверке оказалось, что то, что из 20-ти символов не заполнено - заполняется пробелами, т.о. вместо "Блюм И.В." я получаю в DBEDIT-е "Блюм И.В. ". Я думал проблема кроется где-то в неправильном распознавании типа в TFields. Посмотрел, вроде все нормально.. У кого какие предположения по этому поводу?
С уважением, Игорь.
← →
Johnmen (2002-09-30 10:04) [1]Такова функциональность ADO.
← →
Anatoly Podgoretsky (2002-09-30 10:08) [2]Сделай TRIM при активации
← →
Азазелло (2002-09-30 10:23) [3]не понял, где и для активации чего? Поясните пожалуйста..
← →
Азазелло (2002-09-30 11:06) [4]Понял.. то бишь явно гадить в селекте.. А то я думал опция какая-нибудь есть.. Только блин неправильно это.. Ansi padding в off стоит, какого хрена он мне лишние пробелы гадит. Хотя и выход..
Спасибо за разьяснения.
С уважением, Игорь.
← →
Anatoly Podgoretsky (2002-09-30 11:14) [5]Азазелло (30.09.02 11:06)
Не надо гадить в седекте, проще edit.txt := trim(edit.txt), скажем в OnShow, вместо trim может лучше TrimRight, в зависимости от задачи
← →
Азазелло (2002-10-01 09:22) [6]В селекте гадить действительно нельзя.. убедился на собственном опыте..
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.10.21;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c