0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38

Программное добавление столбца в таблицу

17.12.2009, 13:32. Показов 8933. Ответов 39
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На форуме уже рассмотрена тема программного создания таблицы:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
procedure TForm5.Button1Click(Sender: TObject);
begin
Table1.Active:=false;
Table1.DatabaseName:='C:\MyDatabase';
Table1.TableName:=Form2.Edit25.Text;
Table1.TableType:=ttParadox;
 
Table1.FieldDefs.Clear;
 
Table1.FieldDefs.Add('Naimenovanie',ftString,40,Tr ue);
Table1.FieldDefs.Add('Vsego',ftInteger,0,False);
Table1.FieldDefs.Add('Pens',ftInteger,0,False);
Table1.FieldDefs.Add('OdinPens',ftInteger,0,False) ;
Table1.FieldDefs.Add('Inval',ftInteger,0,False);
Table1.FieldDefs.Add('OdinInval',ftInteger,0,False );
Table1.FieldDefs.Add('SemInval',ftInteger,0,False) ;
Table1.FieldDefs.Add('SemPens',ftInteger,0,False);
 
Table1.CreateTable;
 
Table1.Active:=true;
end;
Но что делать в том случае, если таблица уже создана, и необходимо задать имя поля, программно добавив ее в имеющуюся таблицу?

Код программы:

Delphi
1
2
3
form3.Table1.Active:=false;
  form3.Table1.FieldDefs.Add('Naimenovanie',ftString,40,True);
  form3.Table1.Active:=true;
При выполнении приведенного кода, выводится следующая ошибка:

Undeclared identifier: 'ftString'.


Если вместо «,» добавить «;»:
form3.Table1.FieldDefs.Add('Naimenovanie ';ftString;40;True);

то выдается следующее:

[Error] Unit7god.pas(55): Not enough actual parameters
[Error] Unit7god.pas(55): Statement expected, but expression of type 'Integer' found.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.12.2009, 13:32
Ответы с готовыми решениями:

Программное добавление столбцов в таблицу БД
Есть две таблицы в БД: "Свойства" и "Функции". Необходимо между ними установить соответствие. Лучше всего, на мой взгляд, это сделать...

Добавление столбца в таблицу
Необходимо добавить столбец nalich в таблицу Sklad, если он не существует. При запуске выдаёт ошибку: "ошибочная конструкция SQL;...

Добавление нового столбца в таблицу БД
ну вообщем ситуация такая: есть база данных на интербэйзе и прога для нее написанная на дельфях....все работает нормально...но возникает...

39
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
21.12.2009, 20:37  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от _victor Посмотреть сообщение
эм...20-30 записей? много?
во всяком случае, не наглядно
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
21.12.2009, 22:58
said, ну тогда действительно проще ввести поле с датой операции
1
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 01:24  [ТС]
Тогда, получается, мы возвращаемся к началу разговора?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 01:29
said, почему к началу, просто тебе надо пересоздать таблицу с доп. полем или уже есть данные?
1
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 18:38  [ТС]
Куда добавить дополнительное поле? Каждый новый год - это поле



Или я не совсем Вас понял....
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 20:43
said, нет, ты не понял... тебе надо завести поле, в котором будет указано - какой год или дата, ну или как у тебя там в поставновке задачи... тебе твоей таблицы на пару миллионов лет хватит, чтобы работало без тормозов)))
1
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 20:49  [ТС]
Так, так ))))
я все равно не понял в чем идея.
Там, в таблице, видишь, само поле - это год. И в этом поле внесены все значения. Если следующий год добавить, то тоже самое получается, что я и в самом начале спрашивал.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 20:55
said,ну так зачем плодить тучу полей, если можно завести поле - год, в нем будет указано за какой год данные в других полях этой записи
1
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 21:06  [ТС]
а название других полей?? я об этом уже думал. если и год и другие экономические показатели вносить в полях, то ненаглядно выходит
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 21:09
said, у тебя экономические показатели одни и те же?
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 21:11  [ТС]
нет конечно. в том-то и дело. пока только 3 таблицы. в каждой по 20-30 показателей
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 21:14
said, 20-30 показателей экономических? слушай, озвучь задание все более-менее внятно, тогда мне проще будет придумать более-менее оптимальное решение, пока я не понимаю ТЗ - сижу и просто угадываю... хотя бы вкратце растолкуй, что, зачем и почему
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 21:48  [ТС]
хорошо.мин 15

Добавлено через 32 минуты
Разработка программного обеспечения для анализа и планирования использования ресурсов предприятия.

Вот формулировка задачи. Все остальное приходится придумывать самому.

Получаем у предприятия за отчетный период его показатели.

По основным фондам:
1. Стоимость ОПФ на конец периода
2. Коэффициент поступления ОПФ
3. Коэффициент ввода в эксплуатацию ОПФ
4. Коэффициент обновления ОПФ
5. Коэффициент выбытия ОПФ
6. Срок обновления ОПФ
7. Коэффициент прироста
8. Темп прироста стоимости ОПФ
9. Коэффициент годности
10. Коэффициент износа
11. Фондоотдача
12. Фондоемкость
13. Фондовооруженность
14. Рентабельность ОФ

По оборотным активам:
1. Коэффициент оборачиваемости оборотных активов
2. Скорость оборота в днях
3. Коэффициент закрепления оборотных активов
4. Общий норматив оборотных средств
5. Норматив производственных запасов
6. Норма запаса в днях по отдельному виду оборотных средств
7. Размер оборотных средств для незавершенного производства
8. Коэффициент нарастания затрат при равномерном нарастании затрат
9. Коэффициент нарастания затрат при неравномерном нарастании затрат
10. Величина оборотных средств, вложенных в запасы готовой продукции на складе
11. Длительность хранения продукции на складе
12. Материалоемкость
13. Материалоотдача
14. Обеспеченность предприятия запасами в днях
15. Средний дневной расход каждого вида материалов
16. Коэффициент использования материалов
17. Влияние материальных ресурсов на объем производства продукции
18. Норму расхода материала
19. Общий производственный запас материалов
20. Средний запас материалов в сутки
21. Рентабельность оборотных активов

По трудовым ресурсам:
1. Трудоемкость
2. Выработка
3. Коэффициент календарного использования ОФ
4. Коэффициент целосменного использования
5. Коэффициент внутрисменного использования
6. Коэффициент использования машинного времени
7. Коэффициент экстенсивной нагрузки
8. Коэффициент интенсивной нагрузки
9. Коэффициент интегральной нагрузки
10. Среднесписочная численность промышленно-производственного персонала;
11. Коэффициент интенсивности оборота по приему;
12. Коэффициент оборота по выбытию;
13. Коэффициент текучести;
14. Коэффициент замещения;
15. Коэффициент постоянства кадров;
16. Полная фактическая продолжительность рабочего дня;
17. Фактическая урочная средняя продолжительность рабочего дня;
18. Режимная продолжительность рабочего дня;
19. Среднее число дней работы одного рабочего;
20. Среднее число часов работы одного среднесписочного рабочего;
21. Средняя продолжительность рабочего дня (смены);
22. Средняя часовая выработка на одного списочного рабочего;
23. Средняя дневная выработка на одного списочного рабочего;
24. Средняя годовая выработка на одного списочного рабочего;
25. Численность работников, приходящихся на единицу произведенного продукта.
26. Заработная плата за один час работы;
27. Прирост фонда заработной платы, связанный с темпами прироста выпуска продукции;
28. Фонд заработной платы.

Используя эти показатели необходимо проанализировать:
1. состояние предприятия на сегодняшний день
2. спрогнозировать состояние отдельно взятого показателя
3. выводить отчеты по текущему году (по всем показателям, отдельно для каждого вида ресурса (основных фондов, оборотных активов… )), а также за выбранный период (например: 2005-2008, либо 1996-2003. ну и прочие). Строить диаграммы для определенного показателя и прочее…
4. Планирование производства (симплекс-метод). Этот пункт выполнил. Однако, возникает еще одна проблема – связывание с вышеприведенными таблицами

Таблицы уже составлены. Парадоксовские. В дельфи использую BDE. Первое поле – «Наименование». В записях этого поля внесены названия вышеприведенных показателей. Следующее поле – «2005», который соответствует 2005 году. В записях этого поля – значения, соответствующие названиям показателей, внесенных в поле «Наименование».
Вот как быть дальше?....
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 22:00
said, для твоей задачи надо три поля - название показатель, значение, период - все...
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 22:08  [ТС]
В поле "период" что указывать в записях?

Добавлено через 2 минуты
Может я что-то не допонимаю. Пользователь сам должен вносить значения. как следующий перион он будет добавлять?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 22:23
said, элементарно, ему вообще даже не надо париться по поводу периода, ты же легко сам можешь вычислять, какой год стоит на машине
0
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 22:31  [ТС]
Кажется мы не понимаем друг друга.
Как он тогда предыдущие года занесет?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
22.12.2009, 22:35
said, ну дай ему возможность заносить дату, если не хочет, значит в текущий год, в чем проблема-то?
1
0 / 0 / 0
Регистрация: 17.12.2009
Сообщений: 38
22.12.2009, 22:36  [ТС]
Ладно. Подумаю. Спасибо
0
1 / 1 / 1
Регистрация: 22.03.2016
Сообщений: 23
10.02.2022, 16:11
А как добавить поле с типом integer?
Запрос выдаёт сообщение "ошибка синтаксиса при определении поля". Хотя в access это поле отлично добавляется.
SQL
1
ALTER TABLE old_table  ADD COLUMN new_field INTEGER
Добавлено через 21 минуту
Всё, разобрался. Прошу удалить моё сообщение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.02.2022, 16:11

Добавление нового столбца в таблицу
Adoquery1.close; Adoquery1.sql; Adoquery1.sql.add(alter table KTZ add column'+quotedstr(edit1.text)+'string'); Adoquery1.execsql; ...

Программное добавление столбца в таблицу
Возможно ли с помощью программного кода добавить столбец в таблицу?Если возможно, то как?

Добавление столбца в таблицу БД
Доброе утро. Подскажите пожалуйста как программно добавить столбец в таблицу БД? katalogPlanDataSet.Oborud2.Columns.Add(); Так не...

Запрос на добавление столбца в таблицу
вот такой запрос нужно сделать,по поводу добавления строки я разобрался а вот столбец никак не могу вывести,подскажите как

Добавление нового столбца в таблицу БД
Есть БД Access 2007. Никак не могу найти добавления нового столбца в таблицу,т.е при нажатии на кнопочку можно было задать имя столбца и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

Новые блоги и статьи
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru