|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.12.2013, 23:42 | #1 |
Форумчанин
Регистрация: 10.12.2011
Сообщений: 154
|
ADO изменение поля
Всем добра.
У меня имеется таблица Учащиеся и в ней есть поле Класс (значения 5А, 5Б, 10Г и т.д.) вот как можно реализовать с помощью ADO перевод всех учащихся в следующий класс. Я пока сделал таким способом, но очень коряво и много писать надо, Код:
|
17.12.2013, 23:44 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А это он и есть способо по програмистски
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
18.12.2013, 08:33 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
я бы структуру переделал.
как минимум, добавил таблицу Класс в ней поля Код:
При переходе в следующий класс изменяем только номер класса в таблице Класс а как максимум, вычислял номер класса по началу году обучения и текущему учебному году. Тогда update при переходе в следующий класс вообще не понадобился бы! |
18.12.2013, 10:43 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
18.12.2013, 13:17 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
ручками написать для всех классов и ВСЕХ букв классов (говоряд, бывают классы с буквами не только А Б В и Г, но и Д, Е...
при этом учитывать, что нужно СТРОГО соблюдать последовательность перехода: сначала убрать все старшие классы (11-е), потом 10е перевести в 11е, потом 9-е перевести в 10 и т.д. всё это выполняется МНОЖЕСТВОМ ОТДЕЛЬНЫХ запросов (по каждому классу и каждой букве), если не пользоваться транзакциями (откат/commit), то прервав процесс на середине, получим кучу учеников, которые непонятно в каком классе учатся. Вот это и называется КОРЯВО. p.s. предложенный мною способ будет состоять из одного UPDATE: Код:
|
18.12.2013, 13:28 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
То же самое для 5А, 5Б, 10Г можно сделать и так (думаю что у ТС Access)
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
18.12.2013, 13:29 | #7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Согласен - справочник наименований классов тут уместен.
I'm learning to live...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ADO: Динамические поля синхронного просмотра | grh | БД в Delphi | 2 | 03.10.2012 10:48 |
Изменение типа поля | Ericnex | БД в Delphi | 1 | 06.09.2012 10:54 |
Запись в поля DateTime в БД Visual FoxPro посредством ADO | Аватар | БД в Delphi | 2 | 13.12.2010 11:44 |
Выбор поля по условию (ADO) | Gracia | БД в Delphi | 2 | 27.04.2010 12:36 |
Копирование поля из одной таблицы в другую(ADO) | RamireZ | БД в Delphi | 5 | 17.11.2009 22:48 |