![]() |
|
|
![]()
|
|
| Serebrus |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 333 Регистрация: 22.5.2007 Где: Ташкент Репутация: нет Всего: нет |
Всем привет.
Пожалуйста помогите решить один вопрос: Как можно создать ADOTable из ADOQuery, т.е. надо или создать, или скопировать данные ADOQuery в ADOTable. Сам пробовал таким путем:
Но этот путь невозможно употребить при большой количестве записей?! Это сообщение отредактировал(а) Serebrus - 2.9.2007, 09:54 |
|||
|
||||
| Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
Зачем такое нужно, если не секрет?
Почему это не возможно? |
|||
|
||||
| Rodman |
|
||||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
c чего взял???
а так? |
||||
|
|||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Смотри метод Clone
Это сообщение отредактировал(а) ALeXandrK - 2.9.2007, 15:49 -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
Rodman,
если известно конечное значение счетчика, то предпочтительнее использовать for, нежели while и repeat. Других отличий от исходного кода я не заметил. |
|||
|
||||
| Esperito |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 147 Регистрация: 2.9.2007 Репутация: 2 Всего: 3 |
А можно поинтересоваться, зачем вообще перегонять записи средствами клиента?
|
|||
|
||||
| Zero |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Работать оно будет, но если записей много, то заклебёшся ждать пока всё выполнится. Если вспомнить основы языка SQL, то это язык манипулирования данными из БД. и в случае с автором темы состав квери определялся как запрос на выборку данных. (т.е. Select ....) А в данном случае нужно пользоватся не выборкой, а вставкой записей, т.е. более подробное описание поищи в инете по INSERT INTO и как это применять на практике. Добавлено через 6 минут и 44 секунды
Предпочтительнее если известно что количество элементов цикла, не превышает максимальное значение счётчика цикла. Т.е. если переменная счётчика цикла будет типа integer, то максимальное число которое можно будет поставить в секция условия остановки это 32767. Если записей будет хоть на одну больше, то выскочит run time ошибка. Это сообщение отредактировал(а) Zero - 2.9.2007, 21:51 |
|||
|
||||
| Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
Если количество перегоняемых записей будет больше чем 32767, то данный способ не просто нерационален Добавлено через 8 минут и 5 секунд А еще было бы полезно узнать что за БД ? И вообще если проблема заключается в переносе записей с локальной БД на сервер, то ответ лежит тут : http://www.delphikingdom.com/asp/answer.asp?IDAnswer=21305 |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Зачем тут вообще циклы?!
Тут нужна всего одна строчка:
-------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
ALeXandrK,
сам то пробовал Clone(ADOQuery) ? посмотри вопрос и нижний комментарий http://www.delphikingdom.com/asp/answer.asp?IDAnswer=13572 |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Сам не пробовал
что это функция создания "сеамского близнеца". Я то как раз и использую INSERT INTO в подобных ситуациях Это сообщение отредактировал(а) ALeXandrK - 2.9.2007, 23:03 -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Serebrus,
Могу быть неточным - ADOTable не пользуюсь и не советую пользоваться. Но примерно - так. ADO = SQL. Поэтому колбасить "по-dbf-ному" - иметь жуткие тормоза и проблемы с полями значений null. |
|||
|
||||
| ALeXandrK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 342 Регистрация: 31.1.2007 Где: Санкт-Петербург Репутация: 2 Всего: 6 |
Я бы чуть укоротил код:
И вообще, если тут таблица нужно только в RunTime, то я бы воспользовался услугами TADODataSet| TADOStoredProc | TADOCommand. Я бы на твоем месте (да и на своем) поступил бы так: все RunTime запросы я бы составил в Access, а потом просто вызывал бы их с помощью TADOStoredProc. Что это дает: ты можешь проверить результаты запроса незапуская программу. Согласись, что проверять правильность запроса с помощью программы намного неудобнее, чем в Access. Это сообщение отредактировал(а) ALeXandrK - 3.9.2007, 13:15 -------------------- Богат не/ни тот, у кого много, а тот, кому хватает |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |