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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.07.2011, 15:11   #1
ebuchiysayt_ebuchi
Новичок
Джуниор
 
Регистрация: 28.05.2010
Сообщений: 2
По умолчанию Создать record в Run-time

Доброго времени суток.
Решил я написать очередной велосипед - небольшую БД для себя. Встал вопрос - как хранить данные строки, притом что количество и тип полей заранее неизвестно? Можно ли в Run-time создавать record-ы, содержащие данные нужных типов?

Заранее спасибо.
ebuchiysayt_ebuchi вне форума Ответить с цитированием
Старый 31.07.2011, 16:04   #2
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Если хотите использовать типизированные файлы, то ничего не получиться. Потому что типизированные файлы требуют от типа заранее известный размер структуры. А используя потоки можно, но нужна своя организация хранения данных, которая была бы надежная, при повреждении части определенного блока, твоя БД должна быть работаспособна
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 31.07.2011, 16:13   #3
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Если уж небольшую БД для себя, то стоит посмотреть в сторону SQLite...
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 31.07.2011, 16:18   #4
volod3000
Форумчанин
 
Аватар для volod3000
 
Регистрация: 18.12.2008
Сообщений: 266
По умолчанию

Можно попробовать и MySQL

Мало открыть человеку глаза, большинство еще просит указать дорогу и ждет волшебного пенделя.
volod3000 вне форума Ответить с цитированием
Старый 31.07.2011, 17:12   #5
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Пробывать можно все что угодно. Может он хочет попробывать сделать свое и узнать как это устроенно. ebuchiysayt_ebuchi могу показать мою наработку)
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 31.07.2011, 18:17   #6
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

если именно record то попробуй ч.т. на подобе listview'a
Код:
ype
      ListView = TListView;
           Zap=record
           num:integer;
           {то что тебе необходимо}:string;
          end;
	Var
           Blok:Zap;

procedure AddBlok(Blok:Zap);
	 begin
//// 	 
end;
bulldog5293 вне форума Ответить с цитированием
Старый 31.07.2011, 18:41   #7
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Цитата:
Можно ли в Run-time создавать record-ы, содержащие данные нужных типов?
Эм? Если нужен например record с определённым массивом полей, то можно так
Код:
type
       MyType = packed record
         Fields : array[1..100] of Variant; // собственно поля
         fNames : array[1..100] of String;// имена полей
end;
В общем, что-то в этом роде. Хотя, Variant - не лучший выбор.Уж лучше тогда MySQL.
_-Re@l-_ вне форума Ответить с цитированием
Старый 31.07.2011, 19:02   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Встал вопрос - как хранить данные строки, притом что количество и тип полей заранее неизвестно?
ИМХО старая школа с указателями и динамическими массивами рулит.
Те же динамические списки.
Однако факт остается фактом: Никакая из уважающих себя СУБД не работает с данными, тип которых неизвестен.

P,S, Хотя если не ошибаюсь Кащей так умеет, но у него совсем другой подход.
Опять таки почему все данные любого типа не приводить в строки (как это делается в Информиксе при экспорте) и уже хранить строковые представления.
Так поступает DBF - данные в нем строковые, хотя и типизация есть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Run-time error 13 olimpus Microsoft Office Excel 11 25.12.2010 22:49
Run-Time Check Failure #3 Xe[N]o Общие вопросы C/C++ 2 27.11.2010 09:01
Как создать TPageControl в run-time tonatas Общие вопросы Delphi 4 13.08.2010 22:57
ActionManager - работа в run - time chingiz Компоненты Delphi 0 10.10.2009 08:48
Ошибка Run-Time error 13 DEZuv Microsoft Office Access 0 03.04.2009 12:25