компьютерный форум
Вернуться   Компьютерный форум > Программирование и вебстроительство > Программирование

Ответ
 
LinkBack Опции темы Опции просмотра
Старый 20.04.2007, 18:52   #1
Пользователи
 
Регистрация: 20.04.2007
Сообщений: 3
По умолчанию

Как работатать с записями в Delphi (копирование)?
В моём любимом foxpro это просто:
Copy next 1 to {новая таблица с одной (текущей) записью}
Юрий Фёдорович
[size=7][b][color=#FF0000]




Юра вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
20.04.2007, 18:52
Техник
реклама
По умолчанию

Старый 20.04.2007, 20:52   #2
Пользователи
 
Регистрация: 07.12.2004
Сообщений: 783
По умолчанию

Какие именно записи Вы имеете в виду?
record (Аналог сишных структур), или запись в таблице базы данных?
Andy вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Старый 21.04.2007, 07:30   #3
Пользователи
 
Регистрация: 20.04.2007
Сообщений: 3
По умолчанию

Цитата:
Какие именно записи Вы имеете в виду?
record (Аналог сишных структур), или запись в таблице базы данных?
Я спрашиваю о копировании записи таблицы базы данных целиком (одной командой), а не по полям.
Юра вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Старый 23.04.2007, 14:28   #4
Пользователи
 
Регистрация: 07.12.2004
Сообщений: 783
По умолчанию

Можно попробовать как-нибудь так:
Код:
Query1.Close;
Query1.SQL.Add('INSERT INTO SrcTable VALUES
****SELECT * FROM DestTable WHERE RecordID = YourFieldID');
Query1.ExcecSQL;
_______________________________
аццкий 666-й пост =))
(с)Andy
Andy вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Старый 23.04.2007, 17:28   #5
Пользователи
 
Регистрация: 20.04.2007
Сообщений: 3
По умолчанию

Спасибо, но мне это, к сожалению, не подходит. Объясню почему.

У меня конкретная задача: отсортировать таблицу (не применяя индексов, т.к. я не научился удалять информацию из таблицы о предыдущем индексе), сделать её копию в новую таблицу, удалить старую и переименовать новую в старую. Т. е. сделать сортировку таблицы без индексов (проще всего это сделать одной командой Select, но увы - только на экране). А в SQL foxpro это это делается всего лишь четырьмя операторами:

Erase новая.dbf {удаление таблицы}
Select * from старая order by нужная сортировка по полям into dbf новая noconsole {не выводить на экран процесс сортировки}
Erase старая.dbf
Rename новая.dbf to старая.dbf

Конечно foxpro работает только с таблицами dbf, но зато как всё легко, просто и удобно!

Юрий Фёдорович - сторонник foxpro
Юра вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Старый 23.04.2007, 20:17   #6
Пользователи
 
Регистрация: 07.12.2004
Сообщений: 783
По умолчанию

Вот последовательность действий:

1) создается новая таблица... (CREATE TABLE)
2) делаем INSERT всех данных из старой таблицы в новую
3) убиваем старую таблицу (DROP TABLE)

при чем тут индексы?))))

Если Вам так фокся нравится, то зачем с нее слезать? (Прошу прощения за нескромный вопрос)


Andy вне форума  
Digg this Post!Bookmark Post in Technorati
Ответить с цитированием
Ответ


Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Вкл.



Текущее время: 14:16. Часовой пояс GMT.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot
Content Relevant URLs by vBSEO 3.5.0 RC2