Форум: "Начинающим";
Текущий архив: 2009.06.28;
Скачать: [xml.tar.bz2];
ВнизДинамическое добавление полей в TTable Найти похожие ветки
← →
Андрей (начинающий) (2009-05-13 16:04) [0]Имеется таблица с данными. Как к существующим полям добавить програмно новое? Поискал, нашел только как програмно создать таблицу, а про добавление полей нигде не нашел. Помогите, пожалуйста, ссылкой или объясните здесь, как это делается.
← →
Юрий Зотов © (2009-05-13 16:24) [1]Уточните, о чем идет речь - о компоненте TTable или о таблице БД (и какой именно БД)?
Потому что это вещи разные и поля в них добавляются тоже по-разному.
← →
Медвежонок Пятачок © (2009-05-13 16:41) [2]Он же сказал, что TTable
:)
← →
Андрей (начинающий) (2009-05-13 16:42) [3]если можно, то объясните по обоим методам
← →
Андрей (начинающий) (2009-05-13 16:43) [4]
> таблице БД (и какой именно БД)?
Paradox
← →
Anatoly Podgoretsky © (2009-05-13 16:56) [5]> Андрей (начинающий) (13.05.2009 16:43:04) [4]
Еще одна жертва
← →
Медвежонок Пятачок © (2009-05-13 16:58) [6]Удалено модератором
← →
Jeer © (2009-05-13 16:59) [7]
> Андрей (начинающий) (13.05.09 16:04)
>
> Имеется таблица с данными. Как к существующим полям добавить
> програмно новое? Поискал, нашел только как програмно создать
> таблицу, а про добавление полей нигде не нашел. Помогите,
> пожалуйста, ссылкой или объясните здесь, как это делается.
>
Как правило, попытка реструктуризации "на лету" таблицы в базе данных связана с плохим дизайном самой базы.
Существуют "вычисляемые" поля, которые могут добавляться виртуально в TTable.
← →
Андрей (начинающий) (2009-05-13 17:05) [8]
> Jeer © (13.05.09 16:59) [7]
> Существуют "вычисляемые" поля, которые могут добавляться
> виртуально в TTable.
Но в саму базу данные из этих вычисляемых полей не занести, я правильно понимаю?
Ими можно пользоваться только во время выполнения программы?
← →
sniknik © (2009-05-13 17:06) [9]> если можно, то объясните по обоим методам
если можно то объясни задачу, а не то как ты решил его делать.
т.е. чего пытаешься добиться добавляя эти поля. зачем.
← →
Медвежонок Пятачок © (2009-05-13 17:11) [10]Как правило, попытка реструктуризации "на лету" таблицы в базе данных связана с плохим дизайном самой базы.
или с изменяющимися условиями реального мира, который сложнее наших идеальных представлений о правильном дизайне ПО.
← →
Андрей (начинающий) (2009-05-13 17:46) [11]
> sniknik © (13.05.09 17:06) [9]
Задача проста :). Имеется таблица с записями в базе данных. Ее надо реструкторизировать (добавить пару полей и внести в эти поля каждой записи значения по-умолчанию). Таблица не слишком большая, около 500 записей.
← →
Германн © (2009-05-13 17:52) [12]ALTER TABLE
Читать localsql.hlp
← →
MsGuns © (2009-05-13 18:43) [13]>Андрей (начинающий) (13.05.09 17:46) [11]
>Задача проста :). Имеется таблица с записями в базе данных. Ее надо >
>реструкторизировать (добавить пару полей и внести в эти поля каждой >записи значения по-умолчанию). Таблица не слишком большая, около 500 >записей.
А если прога будет запущена повторно, как тогда ?
← →
Германн © (2009-05-13 18:51) [14]
> А если прога будет запущена повторно, как тогда ?
if FindField("Имя столбца") then
:)
← →
Андрей (начинающий) (2009-05-13 20:29) [15]
> Германн © (13.05.09 17:52) [12]
А без SQL никак?
← →
Palladin © (2009-05-13 20:35) [16]без проблем, ADOX поможет тебе если не хочешь изучать SQL DD
единственная сложность доступ к парадоксу через ADO должен быть, но я думаю ты справишься, это ничто в сравнении с SQL DD
← →
sniknik © (2009-05-13 20:42) [17]> А без SQL никак?
можно, но SQL все таки проще.
> ADOX поможет тебе
так у него TTable, а значит BDE и BDE32 хелп.
← →
Андрей (начинающий) (2009-05-13 21:01) [18]пошел читать :)
← →
Palladin © (2009-05-13 21:52) [19]
> sniknik © (13.05.09 20:42) [17]
ну я как бы на правах стеба ))
← →
MsGuns © (2009-05-13 23:55) [20]Если я правильно понял, то в сабже речь идет об установке новой версии СУБД (программа + модель БД) на "старые" данные. Если так, то делается это несколько иначе.
← →
Германн © (2009-05-14 00:32) [21]
> MsGuns © (13.05.09 23:55) [20]
>
> Если я правильно понял, то в сабже речь идет об установке
> новой версии СУБД (программа + модель БД) на "старые" данные.
> Если так, то делается это несколько иначе.
>
Лично я имел в виду именно такую задачу, но одну конкретную (свою). В том случае "делать несколько иначе" было "из пушки по воробьям". Всё-таки о "новой модели БД" в сабже нет речи, имхо. Есть небольшое изменение структуры одной таблицы. Тоже имхо.
← →
Anatoly Podgoretsky © (2009-05-14 11:48) [22]
> ну я как бы на правах стеба ))
А я на правах стеба отвечу, для Парадокс через АДО никак, придется устанавливать полный БДЕ.
← →
sniknik © (2009-05-14 12:25) [23]> для Парадокс через АДО никак
ну вы хотя бы добавляйте, что речь уже о "безSQLных" методах, а то можно понять что вообще никак.
да и с ADOX не уверен, что никак, для "родного" mdb через него же есть возможность менять непосредственно, возможно SQL им и пользуется как "нижним уровнем", а значит для совместимости могли сделать и для исамов (парадокса и д.р.) чтобы ядро SQL независимо от исама работало однотипно.
ну я бы так сделал. в одном месте логика, в другом реализация действий по типу данных.
в общем думаю есть надежда и для ADO :), вот только проверять это или использовать на практике что то не хочется, есть гораздо более простые методы (тот же SQL).
← →
Anatoly Podgoretsky © (2009-05-14 13:14) [24]> sniknik (14.05.2009 12:25:23) [23]
Вырезка из справки
> Драйвер баз данных Paradox работает в одном из двух режимов, в зависимости от того,
> установлено ядро баз данных Borland Database Engine (BDE) или нет. Данные Paradox обновляются только
> с помощью ядра BDE. Если ядро BDE не используется, данные Paradox можно читать,
> экспортировать или присоединять только для чтения.
← →
sniknik © (2009-05-14 15:21) [25]а, вот ты про что, не понял сначала, подумал, что про невозможность сделать через ADO.
да, "самым нижним уровнем" действительно должно быть BDE, должно быть установлено чтобы сработали методы ADOX (да и SQL при обновление структуры в данном случае).
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.06.28;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.006 c