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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.07.2010, 12:41   #11
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Подозреваю, что в данном случае, как обычно, используется SYSDBA/masterkey. Так что с правами проблем не будет. Другого варианта всё равно нет, разве что засунуть это в хранимку, но в любом случае всё сведется к ALTER TABLE.

Как можно обсуждать способ решения, если неизвестна задача? Не вижу ничего плохого в программном добавлении колонок в том же IBExpert'e, например.
угу IBExpert и 50 клиентов в разных регионах страны...

добавление колонок как правило используется если человек не умеет разворачивать таблицу.

к примеру у меня добавление записи в таблицу означает появление еще одной колонки,.. это удобнее чем добавлять колонку и позволяет варьировать количество колонок к примеру от периода отчета.

Цитата:
Сообщение от pu4koff Посмотреть сообщение
Синтаксис ALTER TABLE позволяет в одной транзакции одним запросом добавлять и удалять произвольное число колонок:
Код:
ALTER TABLE NEW_TABLE
  ADD MY_FIELD1 VARCHAR(25),
  ADD MY_FIELD2 int,
  DROP OLD_FIELD;
каюсь - в документацию не заглядывал,
потому как не пользуюсь этой командой
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 23.07.2010, 15:40   #12
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Мне это нужно для того, чтобы пользователь программно мог добавлять колонки. А именно. Есть таблица например:
ФИО 01.01.2010 02.01.2010
Иванов И.И. 1000 500
Петров П.П. 300 400

Нужно, чтобы пользователь мог указать через DateTimePicker1 дату, которая будет являться названием для колонки и новый столбец должен добавиться, чтобы также пользователь мог проставлять (вносить в БД) значения.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 23.07.2010, 16:04   #13
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Мне это нужно для того, чтобы пользователь программно мог добавлять колонки. А именно. Есть таблица например:
ФИО 01.01.2010 02.01.2010
Иванов И.И. 1000 500
Петров П.П. 300 400

Нужно, чтобы пользователь мог указать через DateTimePicker1 дату, которая будет являться названием для колонки и новый столбец должен добавиться, чтобы также пользователь мог проставлять (вносить в БД) значения.
я именно про это и говорил
я-бы сделал простую таблицу

Код:
create table supertable (
fam var020,
imya var020,
otch var020,
fio COMPUTED BY (fam||' '||imya||' '||otch),
fio_s COMPUTED BY (FAM||' '||substring(IMYA from 1 for 1)||'.'||substring(OTCH from 1 for 1)||'.'),
xDate date_only,
xValue int_long
)
и этого вполне достаточно
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 23.07.2010, 16:09   #14
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Что значит COMPUTED? А почему в этой строке
Код:
(FAM||' '||substring(IMYA from 1 for 1)||'.'||substring(OTCH from 1 for 1)||'.'),
xDate date_only,
xValue int_long
)
Отсутствует imya?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 23.07.2010, 16:23   #15
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Что значит COMPUTED? А почему в этой строке
Код:
(FAM||' '||substring(IMYA from 1 for 1)||'.'||substring(OTCH from 1 for 1)||'.'),
xDate date_only,
xValue int_long
)
Отсутствует imya?
все на месте

это составное поле, оно только отображает имеющиеся данные
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 23.07.2010, 16:29   #16
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Блиин, и как же теперь это все впихнуть в одну кнопку )))
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 23.07.2010, 16:40   #17
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Блиин, и как же теперь это все впихнуть в одну кнопку )))
это все делается в IBExpert-е
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 23.07.2010, 16:46   #18
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Так а нее, мне именно то и нужно, чтобы пользователь мог из программы добавлять стобцы и работать с ними. . Ладно, наверное тогда придется использовать StringGrid..
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 23.07.2010, 16:47   #19
Korben5E
Форумчанин
 
Аватар для Korben5E
 
Регистрация: 13.07.2010
Сообщений: 346
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Так а нее, мне именно то и нужно, чтобы пользователь мог из программы добавлять стобцы и работать с ними. . Ладно, наверное тогда придется использовать StringGrid..
любишь геморрой? - делай раз любишь
Non est culpa vin, sed culpa bibentis
Korben5E вне форума Ответить с цитированием
Старый 23.07.2010, 16:54   #20
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Не люблю его . Но, если не получается сделать программно так, то придется делать через геморрой.
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое добавление колонок BDGrideh Pypkin30159 БД в Delphi 9 28.06.2010 02:02
Модули и как с ними бороться rlevv Общие вопросы Delphi 1 10.05.2010 21:22
Создание файлов и работа с ними... Olka... Общие вопросы C/C++ 12 02.04.2010 23:30
добавление записи firebird alex_-87 БД в Delphi 1 03.01.2010 16:45