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

Вниз

А как отвязать запись от таблицы?   Найти похожие ветки 

 
Alex_S   (2005-01-15 00:12) [0]

В старом добром Паскале есть такой тип record, были и файлы из таких record"ов. Мы читали запись, делали с ней, что хотели, а файл можно было закрыть и забыть. Вот осталось желание взять запись из TTable или TQuery, отделить и теми же методами DBEdit и т.п. возиться с ней, а потом, когда надо, вернуть, если надо. Вопрос: можно ли как-то таскать её в памяти, забыв о файле, или лучшее, что можно придумать - временный файл для неё? Т.е. даже необязательно мне знать все тонкости, а в принципе что с этим в современном Дэльфи в применении с БД?


 
Anatoly Podgoretsky ©   (2005-01-15 00:17) [1]

По секрету Дельфи это и есть Паскаль, это всего лишь маркетинговые игры с названиями, в которые очень любит играть Борланд. Данные их набора данных доступны через TField (основной механизи), ты можешь делать с ними что угодно.
Чувствует также что ты почти ничего не знаешь о базах данных. Тебе надо обязательно почитать литературу. И тогда подобных вопросов в принципе не будет.


 
Alex_S   (2005-01-15 02:39) [2]

Спасибо. Секрет этот я знал всегда :-) Примерно с 1996 года.
И про TField знаю. Вот только хотел бы закрыть таблицу (имеется ввиду файл *.db, например), т.е. Table.Close, а вся запись останется в памяти, в буфере или как-то ещё. Чтобы форму мог править дальше, а потом когда-нибудь, если захочу, вернуть в ту же таблицу (файл *.db) на любое место или в другую таблицу такой же структуры. Да, я пока на земле. И еще помню о файлах и еще не называю папку "базой данных", не влез с головой в клиент-сервер, хорошо помню что такое тип record и как я с ним делал что угодно, чего с записью БД сделать почти невозможно. Ведь согласитесь, это легко ли создать таблицу (файл *.db) с 300 полями? А в record чего угодно указывай, любые массивы выдумывай. Я пока испорчен старым Паскалем и не испорчен клиент-серверными трюками. И вот ни в каких книжках не найду старого доброго способа выделить запись в БД и обратиться к ней как к записи. Да, еще я не был испорчен FoxPro, DBase и т.п. вещами. Поэтому мой образ мысли пока ещё отличается от Вашего. Но я буду стараться избавляться от старых вредных привычек %-((. Напомню старое...
seek(f1,n); read(f1,rec);
rec:=other_rec;
{ .... }
seek(f2,k); write(f2, rec);

Было просто. А теперь?


 
P.N.P. ©   (2005-01-15 02:47) [3]

>Alex_S   (15.01.05 02:39) [2]
> вся запись останется в памяти
Можно и всю таблицу держать в памяти
Для этого уже давно придумано множество
компонентов (например kbMemTable или EhLib)


 
Некто   (2005-01-15 11:43) [4]

>> А как отвязать запись от таблицы? [D7]
отвЯзная запись получится однако :-))
просто запись-беспредельщица

>> Было просто. А теперь?
учи SQL и поймёшь, где действительно просто


 
Alex_S   (2005-01-15 13:14) [5]

>>P.N.P. ©   (15.01.05 02:47) [3]
>>Можно и всю таблицу держать в памяти
Для этого уже давно придумано множество
компонентов (например kbMemTable или EhLib)
-----------
Вот за это и благодарю. Хоть получил, наконец-то пару слов подсказки, куда двигать. Значит всё-таки есть оно, надо только искать...

2Некто - тоже спасибо. Будем учить, однако.
А формулировка вопроса - противоположность существующему где-то рядом.


 
Sergey_Masloff   (2005-01-15 13:25) [6]

Alex_S   (15.01.05 13:14) [5]
Может подойдет TClientDataSet? Его ж не обязательно в MIDAS использовать. Определил ему поля дал CreateDataSet назаписывал в него данных и работай-заработайся. И стандартный компонент а всякие kbMem они ж без исходников - таких бомб можно заполучить (и было кстати и именно с kbMem)


 
P.N.P. ©   (2005-01-15 15:46) [7]

>Sergey_Masloff   (15.01.05 13:25) [6]
Ну незнаю, у меня
kbmMemTable v. 5.00 beta - с исходниками.
И проблем пока не наблюдал =)


 
sniknik ©   (2005-01-15 18:10) [8]

> Может подойдет TClientDataSet?
а может и TADODataSet, аналогичные веши есть. см. ветку "Промежуточная база?"


 
Alex_S   (2005-01-16 16:08) [9]

Мнения разные важны, мнения разные нужны... Будем смотреть



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

Текущий архив: 2005.02.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
3-1105688598
Zoa
2005-01-14 10:43
2005.02.13
Промежуточная база?


9-1099835093
Колбасьев
2004-11-07 16:44
2005.02.13
3DS и другие форматы


3-1105986233
KristinA
2005-01-17 21:23
2005.02.13
Kak s4itat bazu dannih do togo kak form1 pojavitsja??


3-1105716383
SergP.
2005-01-14 18:26
2005.02.13
Поддерживает ли SQL побитовые операции?


4-1103836615
Михаил М
2004-12-24 00:16
2005.02.13
Стандарный вывод (ввод) консольных приложений Windows