Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];

Вниз

Создание Records во время работы программы   Найти похожие ветки 

 
Roobee ©   (2004-12-19 07:25) [0]

Уважаемые Мастера.
Возможно ли средствами Delphi во время работы программы создать Record содержащий произвольные поля
(например считать текстовый файл содержащий строки типа ИМЯ_ПОЛЯ=ТИП_РАЗМЕР)

Field1=integer
Field2=string[32]


 
Palladin ©   (2004-12-19 08:03) [1]

Record он на то и record, что описывает данные во время компиляции. Читайте книжки о паскале и решайте задачи. Меньше будет глупых вопросов, больше будет новых решений.

По сабжу, есть TIniFile.


 
begin...end ©   (2004-12-19 10:52) [2]

> Roobee ©   (19.12.04 07:25)

> например считать текстовый файл содержащий строки типа
> ИМЯ_ПОЛЯ=ТИП_РАЗМЕР

См. [1] или TStringList.Names, TStringList.Values.


 
Поручик ©   (2004-12-19 10:59) [3]

А можно ли динамически создавать классы?


 
Sergey_Masloff   (2004-12-19 11:17) [4]

Поручик ©   (19.12.04 10:59) [3]
>А можно ли динамически создавать классы?
Паскаль язык со строгой проверкой типов НА ЭТАПЕ КОМПИЛЯЦИИ. В любой нормальной книжке это ИМХО написано на первой или второй странице.


 
Поручик ©   (2004-12-19 12:26) [5]

Sergey_Masloff   (19.12.04 11:17) [4]

> Паскаль язык со строгой проверкой типов НА ЭТАПЕ
> КОМПИЛЯЦИИ. В любой нормальной книжке это ИМХО
> написано на первой или второй странице.


Жаль...


 
Roobee ©   (2004-12-19 12:34) [6]

к чему был вопрос.
ведь базы данны - и есть рекорды.
однако вы вольны добавлять поля в таблицы и удалять их.
ведь когда вы создаете таблицу бд с первым полем - строка длиной 32 символа, вторым - целое число, то в этот момент вы описываете структуру рекорда которую бд и создает. так что должно быть решение...


 
DrPass ©   (2004-12-19 12:38) [7]


> ведь базы данны - и есть рекорды.

Налицо типичная подмена понятий. "Запись" в Паскале и "запись" в БД - совершенно разные вещи.


 
Sergey_Masloff   (2004-12-19 12:44) [8]

Roobee ©   (19.12.04 12:34) [6]
Вопрос и то что вы описываете не взаимосвязаны. Никаких новых Record в терминах паскаля в базах данных не создается а добавляются новые экземпляры существующих строго определенных типов в хранилище метаданных.
 Скажем есть жестко определенный тип "таблицы" с полями "ID","имя таблицы","флаги". Есть жестко определенный тип "поля таблиц" с полями "ID таблицы", "Порядковый номер поля", "Тип поля", "Размер"...

И при добавлении полей пользователем в свои таблицы средствами DDL всего лишь в "системные" таблицы вносятся "экземпляры" системных типов которые (типы) определены статически.


 
palva ©   (2004-12-19 13:01) [9]

Roobee ©   (19.12.04 07:25)
> ведь базы данны - и есть рекорды.
"Верной дорогой идете, товарищи" (В.И.Ленин)
Из программы вы можете создать RecordSet в ADO и использовать его как структуру данных. То есть, не имея базы данных, новый Recordset можно Open, потом создать нужные вам поля с именами и типами, создать и заполнить как угодно записи, перемещаться, пользоваться закладками, поиском, сохранить в XML - короче все операции допустимые для рекордсетов.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.01.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
1-1103186444
TUser
2004-12-16 11:40
2005.01.02
finalization


3-1102405331
SilverDragon
2004-12-07 10:42
2005.01.02
Структура DBF


3-1102370802
Dmitriy_D
2004-12-07 01:06
2005.01.02
Помогите составить запрос в БД MySQL


1-1102971055
serko
2004-12-13 23:50
2005.01.02
Combobox и DateTimePecker


14-1102669788
REA
2004-12-10 12:09
2005.01.02
Модератору





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский