Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
2-1241873934
Tany
2009-05-09 16:58
2009.06.28
TreeNode


15-1240118968
AIRDIGER
2009-04-19 09:29
2009.06.28
Откомпилированные Delphi-модули (.dcu) в исходный код (.pas)


2-1241365483
Роман
2009-05-03 19:44
2009.06.28
Програмное создание компонентов на форме


15-1240556883
tesseract
2009-04-24 11:08
2009.06.28
Прогресс виртуализации


2-1241611459
Mishenka
2009-05-06 16:04
2009.06.28
Фокус при скроллинге в ListViewСкроллинг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский