Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.02;
Скачать: CL | DM;

Вниз

Создание 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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.047 c
1-1103201990
SbtON
2004-12-16 15:59
2005.01.02
Можно ли добавить в процесс компонент NMFTP?


3-1102361262
sloug
2004-12-06 22:27
2005.01.02
Колонки в DBGrid


1-1103182543
ASMiD
2004-12-16 10:35
2005.01.02
Перехват операций с файлами


1-1103275006
Dima
2004-12-17 12:16
2005.01.02
MetaFile


1-1103444215
WhiteGuy
2004-12-19 11:16
2005.01.02
Перемещение формы