![]() |
|
|
![]()
|
|
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Люди. помогите найти решение.
С ADO, я уже убедилась, что доступаться к данным лучше, запросы выполняются лучше, быстрее и теде. Но в ADO нет возможности реализовать гетерогенный запрос, эта возможность есть в BDE. А мне надо работать так, чтобы у меня был гетерогенный запрос , по которому данные с сервера поступали бы в базы данных компутеров в сети. Только не надо меня посылать в Доступ к БД-1. Локальные БД, Доступ к БД-1. Локальные БД или же ткните где там про это написано. А вообще, хочу ваши предложения и советы услышать из личного опыта, как решали такие задачи? Может быть все таки както можно реализовать гетерогенный запрос в ADO? Может быть что-то посоветуете другое? Да, кстати..., в BDE и ADO набор операторов для написания запросов ну резко отличается.. вернее их используют по разному, может быть есть источник где эти отличия в табличке изложенны, чтоб повесить перед носом и не лазить по всей сети в поисках примеров? Вроде бы не очень много попросила.. С уважением, Dolphinchik. Добавлено @ 06:04 Может быть вообще стоит на что-то другое переходить и вникать? что-то меня уже не радует Delphi.. Ваши мнения..? также..допустим мне прийдётся работать с базами оракла, эскюэля, дэбээфками, *.gdb, *.db, допустим они будут очень большие, до гига. Их все надо будет обрабатывать, конвертировать, сливать во едино... Может дадите ссылку на какие-нибудь советы? |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
я извиняюсь, не упорядочила свои мысли и вылила все это сюда.
Дело в том, что поработав в Delphi пришла к выводу, что многое меня не устраивает, действительно ли так все плохо или я чего-то не знаю? 1. гетерогенные запросы при клиент-серверной структуре доступа. 2. работа с различными базами. Вот то, что мне необходимо реализовывать. |
|||
|
||||
| Rodman |
|
|||
|
CIO ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 6144 Регистрация: 7.5.2006 Где: Ukraine ⇛ Kyiv ci ty Репутация: 22 Всего: 122 |
||||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Rodman
дело в том, что нельзя обьясню сейчас почему.. вот есть у меня аналогично как и в том топе dbfки, много dbfок. они все валяются на серваке и я должна сделать запрос, у меня запрос поиска. я делаю цикл..до тех пор пока не закончится список из имён таблиц делать запрос, в котором эти имена таблиц соответственно используются. все это дело с помощью insert бежит в табличку которая лежит где? на сервере или на клиенте? на клиенте, где и сохраняется. далее.. почему? потому как если на сервере сохранить, то если в тоже самое время кто-то будет обращаться к таблички с искомыми данными из запроса, то он получит фигу с маслом. далее.. делаю табличку на клиенте, то есть встала задача - гетерогенный запрос. и все! обламилось моё ADOConnection. Делаю BDE как было и возвращаюсь к нашим баранам, причем все это дело умопомрочительно тупит. почему? я не знаю почему.. Добавлено @ 10:28 может кто компоненту подскажет нужную? Добавлено @ 10:34 и потом я таблицу с искомыми данными на печать вывожу..то есть использую в RaveReport. хотя проблемы не будет если делать репортинг из запроса, но все это будет висеть в оперативной памяти и как на это будет реагировать машина? я бы сделала select * from'+a где a - это список таблиц, но у sql ограничение в 256 символов в строке и ещё сегодня из горького опыта видимо, другого человека узнала, что ограничение количества таблиц с которыми можно запрос делать так же 256. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
хотя можно все данные слепить в одну таблицу, ибо у них одинаковые индексы и с ней делать запрос!
таблиц около 200, все время количество их растёт. далее.. строк в среднем в каждой около 10к.. но вроде как с этим все равно не должно возникнуть проблем.. 2000000 строк. но как запрос тогда будет исполняться, насколько скорость его изменится? Добавлено @ 10:48 мне тут подсказали, что лучше не сливать всё в одно Добавлено @ 10:48 что делать, люди? |
|||
|
||||
| kobra |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 15.6.2005 Где: Грузия, Тбилиси Репутация: 1 Всего: 9 |
а как на счет исползоват сервер баз данних?
|
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
то есть использовать dbExpress?
у меня dbf-ки.. спасибо за подсказку, разбираюсь, как разберусь, отпишу |
|||
|
||||
| DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 5 Всего: 44 |
наверное D2005?! на мой взгляд очень удобное средство для разработки под БД, но на delphi 7. вот здесь прочти: Локальные, сетевые, серверные БД скорей всего придется отказаться от них, так как вам требуется хранить много информации и с данными работает не один человек, думаю после прочтения статьи (Локальные, сетевые, серверные БД) придет понимание, что сервер БД это не интерфейс доступа к данным. при использовании серверной БД вам не придется хранить данные по всей сети с целью обеспечения многопользовательской работы с БД, вам не придется плодить тысячи таблиц для обеспечения быстродейсвия ваших приложений. мой вам совет разберитесь что такое транзакция, как сервер БД обеспечивает многопользовательский доступ к данным, для чего удобно и правельно использовать хранимые процедуры! успехов. Это сообщение отредактировал(а) DimW - 5.3.2007, 09:24 |
|||
|
||||
| SergeBS |
|
||||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Dolphinchik,
Золотко, не пытайся одновременно работать и с dbf-никами и с сервером. Из этого ничего получиться не может принципиально. Просто потому, что dbf - для 1 юзера, а если нужно нескольким, да с обновлениями и т.п., то единственный правильный вариант - ВСЕ перетащить на сервер. По большому счету неважно какой. ADO достаточно прилично работает со всеми. При этом учти, что в MS SQL например встроен Data Transformation Services Import Wizard. А гонять данные то с сервера в dbf, то из dbf в сервер - полная безнадега. Ибо это попытка "ручками" работать вместо сервера. И еще. Разберись с терминологией. Например:
Из чего следует - это ФАЙЛ-сервер. Какие нафиг запросы? Он вообще не знает что это такое - запрос. А что ты делаешь - запросом тоже не назовешь. Как - не спрашивай. Оффтопик будет. Злостный
ЧТО ЗА ДИЧЬ? Какая такая "табличка на клиенте"? Если клиент - то таблица-таки на сервере, а если таблица не на сервере - то и не клиент, а какой-то Вася Пупкин, которому страсть как хочется в dbf-ках поковыряться. Ну и пусть хочет. Но тогда плоды его ковыряния будут доступны только ему. И никак иначе. А кто ему персональную табличку делает - сам себе злобный буратино.
Читай Локальные, сетевые, серверные базы данных. как бороться с базами данных Либо это одна таблица, разбитая на 200 кусков (в чем я лично сильно сомневаюсь), либо кое-кто, не будем показывать пальцем, кто именно
Где-нибудь через полгодика... не меньше. |
||||||||
|
|||||||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
DimW, Delphi 7!
|
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Я в состоянии решить поставленные задачи.
Знаний у меня много где нет и если бы это было не так, я бы тут вопросы не задавала. Добавлено @ 09:57 Спасибо за ответы, разбираюсь, буду отписывать сюда. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
Программа на самом деле очень старая и до сей поры её не поменяли и не торопятся, пораждает она именно dbf-файлы, установлена на локальной машине и никто её от туда дёргать не будет ибо никому это не нужно, боятся потери информации либо ещё чего. Вот здесь можете смеяться, да, именно боятся потери информации, либо ответственности, скорее второе. Там свой внутренний поиск, но когда осуществляется поиск в этой проге, то поиск записей длится около 5-7минут, моя программа осуществляет поиск нужных записей за 35секунд(но для этого мне приходится копирывать мои dbf-ки на сервер) ,но все равно я считаю, что это ненормально ибо видела я как работают нормальные запросы с гораздо большими обьёмами данных.
Да..около 200 таблиц, именно так. Около 200 dbf-ок. Нет там ключевых полей! Ни к чему они не привязаны! Просто данные и все. И своих знаний я не стыжусь, я человек упёртый, так что все равно добьюсь своего и пойму чего не понимаю! Всё, бум читать.. |
|||
|
||||
| SergeBS |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Dolphinchik,
Это правильно. Кину подсказку: как тут написано, можешь попробовать поиск через ADO типа select bla-bla-bla like '%blamblam%' не копируя данных на сервер, поскольку именно копирование съедает время. Здесь где-то на форуме я такое описывал, именно хитрость like в ADO.
И что? Из этого не следует, что их можно заливать в одну таблицу.
Удачи. "Если ничего не получается, прочтите наконец инструкцию"(С) Законы Мэрфи |
||||||
|
|||||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
nтаг...вообщем сервер базданных распаложен на сервере, чтобы быстрее обрабатывать запросы с программ-клиентов, таг? по-моему в моей голове что-то прояснилось
и подключается к базе...оммайгод, я это знала всегда, просто одно дело когда теория, а другое дело практика. вернее осознание пришло! и разные сервера баз данных могут работать с разными форматами будь то dbf, gdb, db, sql, и теде теде теде!!!! *БЬЁТСО ГОЛОВОЙ АПСТОЛ* Добавлено @ 10:54 прошу прощения за мой русский, просто у нас тут скоро уже 8 марта. пьём филипинское пиво и филипинской камболой прикусываим ))) С наступающим женскую половину. |
|||
|
||||
| Dolphinchik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 24.7.2006 Где: Филлипины Репутация: нет Всего: нет |
А если серьёзно, то, спасибо всем за ответы, я разберусь уже сама...
Для SergeBS: ...И не через полгода, птенчик мой, а когда мне надо будет. Спасибо за пожелание удачи, на этом считаю, что я вам более ничем не обязана. Личный совет (не программирование) для Вас, SergeBS - если вам так сильно противно отвечать людям на глупые по вашему мнению вопросы, то лучше вовсе промолчите. |
|||
|
||||
| SergeBS |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1111 Регистрация: 10.6.2005 Где: Владимир Репутация: 11 Всего: 22 |
Птицу видно по полету... |
|||
|
||||
![]()
|
| Правила форума "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. |