скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Вставка новой записи через буфер



Автор: Eryk Bottomley

Один программер любил компьютеры. Пока его за этим не застукали...


Table2.Insert;
Move(Table1.ActiveBuffer^,Table2.ActiveBuffer^,Table1.RecordSize);
{При необходимости назначаем новый первичный ключ}
Table2.FieldByName('Primary Key').AsWhatever := whatever;
Table2.Post;

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


DbiInsertRecord(Table2.Handle,dbiNOLOCK,Table1.ActiveBuffer);

...конечно, это "обходит" VCL, т.к., чтобы увидеть потом новую запись, необходимо сделать TTable.Refresh.






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook