Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.05.2009, 16:43   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию Считать название по ID

Есть таблица predmety(ID_Predmet,Predmet) и есть таблица reault(в ней есть поле ID_Predmet). В таблицу rezult в поле ID_Predmet заносится ID выбранного предмета. Как сделать, чтобы заносился не номер предмета, а его название вместо номера? Как-то может запросом можно. Из БД predmety берется название предмета и заносится в DBLookupComboBox. Номер предмета считать просто:
Код:
 
Nomer21:=Form1.DBLookupComboBox1.KeyValue;
     Table2.Insert;
     Table2.FieldByName('ID_Predmet').AsString:=IntToStr(Nomer21);
А как быть с названием?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 14.05.2009, 16:55   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
чтобы заносился не номер предмета, а его название вместо номера?
Не ну SQL можно, но ты почти написал:
Код:
Table2.FieldByName('ID_Predmet').AsString:=predmety.FieldByName('Predmet').AsString
Только зачем? Установи реляцию и не парь базу избыточностью
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.05.2009, 17:28   #3
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Не работает. Выдается ошибка: " 'Химия' is not a valid floating point value for field 'ID_Predmet' ".
Только зачем? ЧТобы вместо номера предмета заносилось название.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 14.05.2009, 21:42   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Не работает. Выдается ошибка: " 'Химия' is not a valid floating point value for field 'ID_Predmet' ".
Только зачем? ЧТобы вместо номера предмета заносилось название.
Господи, как всё запущено...
Вы хотя бы представляете, что такое НОРМАЛИЗАЦИЯ структуры таблиц БД?!? И для чего она делается? И как?
ВАМ НЕ НУЖНО ЗАМЕНЯТЬ КОД ПРЕДМЕТА НА САМ ПРЕДМЕТ!

это просто крик души..

а теперь, если Вам теория не нужна и Вы уверены, что знаете, что делате, тогда обратите внимание на тип данных.
на на 100% уверен, что тип поля 'ID_Predmet' - числовой (так хранится КОД предмета), как в числовое поле можно записать СТРОКУ?!?!
Добавьте в таблицу поле 'PREDMET' символьного типа (достаточной длины) и пишите туда названия изучаемых предметов... хоть это и в корне неверно!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.05.2009, 08:14   #5
Rekky
Форумчанин
 
Аватар для Rekky
 
Регистрация: 14.01.2009
Сообщений: 312
По умолчанию

Ну можно еще с помощью редактора полей Table2 создать новое поле типа Lookup. И тогда в самой базе в таблице Table2 так и остануться кода, а пользователь в приложении будет видеть наименования..
Никому не поставить нас на колени! Мы лежали и будем лежать!
Rekky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавить название Romuald Microsoft Office Excel 2 13.05.2009 10:18
название процесса! zonclayv Win Api 1 12.04.2009 16:07
Название компонентов Vladnet Компоненты Delphi 3 31.03.2009 14:36
Название диаграммы Диагностик Microsoft Office Excel 8 07.03.2009 06:15
Название программы ivanesky Общие вопросы Delphi 4 17.02.2009 17:58