Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Вниз

Сортировка и ADO   Найти похожие ветки 

 
Nous Mellon ©   (2004-02-21 16:29) [0]

Здравствуйте, господа. Я  новичок в работе с БД поэтому меня интересует наверное элементарный вопрос. Есть набор данных Adotable, хотелось бы остортировать его по одному из полей и результат потом вывести например в listView.
Записей в этом наборе будет от силы двацать-двадцать пять. С выводом в ListView я справлюсь а вот как осуществить сортировку не знаю. Читал что сортировку можно выполнить создав индекс. Я проиндексировал одно из полей, чтобы сортировка осуществлялась по нему. Попытался задать нужное поле в свойстве IndexName из ObjectInspector"a, но он мне говорит что мой провайдер не поддерживает интерфейс для ф-ции Index, подскажите что я делаю неправильно и какой лучше провайдер выбрать для связи с БД Access.


 
YurikGl ©   (2004-02-21 17:06) [1]

DataModule1.ADODataSet1.Sort:="Поле1";
Если поле не LookUp - то работает.
P.S. Кстати, вопрос, а как сделать сортировку по LookUp полям не прибегая к SQL?


 
YurikGl ©   (2004-02-21 17:06) [2]

DataModule1.ADODataSet1.Sort:="Поле1";
Если поле не LookUp - то работает.
P.S. Кстати, вопрос, а как сделать сортировку по LookUp полям не прибегая к SQL?


 
Nous Mellon ©   (2004-02-21 20:48) [3]

YurikGl
Огромное спасибо


 
KSergey ©   (2004-02-22 10:02) [4]

> YurikGl ©   (21.02.04 17:06) [2]
> P.S. Кстати, вопрос, а как сделать сортировку по LookUp
> полям не прибегая к SQL?

Никак...
Штека в том, что про LookUp поля собственно "движок" АДО нифига не знает. Эти поля (их отображаемый результат) существуют лишь для дельфийского объекта. Здесь же используется сортировка именно средствами "движка" АДО

> Nous Mellon ©   (21.02.04 16:29)  
> БД Access.

Вообще-то, лучше уж тогда использвать ADOQuery и вписать в него элементарнейший запрос с сортировкой.


 
YurikGl ©   (2004-02-22 14:48) [5]

LookUp поля хороши тем, что автоматически в таблицу подставляется PickUpList. А так, ручками делать надо. :(


 
Sergey13 ©   (2004-02-22 15:24) [6]

2YurikGl ©   (22.02.04 14:48) [5]
А плохи тем, что иногда, чтобы показать 1 поле в одной записи на клиента тянется вся справочная таблица, которая может быть и не маленькой.


 
Nous Mellon ©   (2004-02-22 22:28) [7]


> Вообще-то, лучше уж тогда использвать ADOQuery и вписать
> в него элементарнейший запрос с сортировкой.

SQL для меня темень Не подскажете ссылку где можно подучиться сиему ремеслу?


 
YurikGl ©   (2004-02-22 22:46) [8]

Посмотри
http://lib.prm.ru/search.phtml?text=sql&type=0


 
Nous Mellon ©   (2004-02-23 12:02) [9]


>  [8] YurikGl ©   (22.02.04 22:46)

Спасибо уже скачиваю.
Если можно вопрос:
Преположим есть AdoTable с 10 полями.
Первые два поля текстовые. Можно ли создать такой запрос чтобы
он отобрал все записи в которых значение первого ии второго поля было бы рано например "Big Ben"?


 
Guest   (2004-02-23 12:05) [10]

...
where field1 = "Big Ben" or field2 = "Big Ben"


 
Nous Mellon ©   (2004-02-23 12:15) [11]


> ...
> where field1 = "Big Ben" or field2 = "Big Ben"

Спасибо большое


 
Nous Mellon ©   (2004-02-23 14:30) [12]

А вместо "..." надо писать
select * from MYTABLE? а то ругается на неверную пунктуацию..


 
Anatoly Podgoretsky ©   (2004-02-23 14:34) [13]

У тебя в офисе должна быть справка, если нет то установи.


 
Nous Mellon ©   (2004-02-23 14:41) [14]


> У тебя в офисе должна быть справка, если нет то установи.

Вообще я дома работаю :)
Сейчас читаю про SQl может сам быстрее причину найду.


 
Anatoly Podgoretsky ©   (2004-02-23 14:47) [15]

Офис это не здание, а программа


 
Nous Mellon ©   (2004-02-23 15:09) [16]


> Офис это не здание, а программа

В смысле Microsoft Office?


 
Anatoly Podgoretsky ©   (2004-02-23 15:15) [17]

Оно


 
Nous Mellon ©   (2004-02-24 19:38) [18]


> Оно

А причем оно здесь?

Вопрос: Как выполнить сортировку по лукап полям?


 
Anatoly Podgoretsky ©   (2004-02-24 19:48) [19]

А смысл, это поле даже показывать не стоит.


 
Nous Mellon ©   (2004-02-24 19:56) [20]


> А смысл, это поле даже показывать не стоит.

Я может чего не догоняю но ИМХО пользователю лучше увидеть значение некоего поля некой записи из другой таблицы, а не номер записи.
Хотя Анатлий вы же знаете я в БД профан поэтому могу ошибаться :)


 
Nous Mellon ©   (2004-02-24 20:00) [21]

Вот еще Анатолий вопросик вдогонку:
Как эффективно организовать обновление mdb базы через интернет?


 
Anatoly Podgoretsky ©   (2004-02-24 20:05) [22]

Нет правильно, это значение в другой таблице. Поэтому сортировать свою таблицу по полю связи просто нет смысла, а другую сортировать нельзя, она обязана иметь порядок по значению ключевого поля.

А базы лучше вообще не выставлять в Интернет, только через клиента в виде веб формы или другое.


 
Nous Mellon ©   (2004-02-24 20:36) [23]


>
> А базы лучше вообще не выставлять в Интернет, только через
> клиента в виде веб формы или другое.

Ну например AVP или Доктор Web обновляются как то. Вот я и хотел узнать от гуру как осуществить подобный механизм. Очень нужно.
> Нет правильно, это значение в другой таблице. Поэтому сортировать
> свою таблицу по полю связи просто нет смысла, а другую сортировать
> нельзя, она обязана иметь порядок по значению ключевого
> поля.

Ну к примеру у меня таблица баскетбольных матчей.
Первые два поля это поле хозяин матча и гость. Их имена. Я же вместо этого делаю поле ссылку на поле "Имя команды" из таблицы команд и хотел бы отобрать из таблицы все поля значение поля подстановки(одного из двух) равно например ЦСКА.


 
Anatoly Podgoretsky ©   (2004-02-24 20:52) [24]

Nous Mellon ©   (24.02.04 20:36) [23]
С чего ты рещил, что они выставляют свою базу в Интернет и позволяют в нее писать.

Используй DbCombo вместо DbLookupCombo


 
Anatoly Podgoretsky ©   (2004-02-24 20:54) [25]

Вообще то последний совет не подойдет, не по делу, просто не подумал. Тебе надо использовать другой компонент, в котором это реализовано, вроде бы есть в Rx


 
Nous Mellon ©   (2004-02-24 21:03) [26]


> С чего ты рещил, что они выставляют свою базу в Интернет
> и позволяют в нее писать.

Нет вы не поняли, я имел ввиду так. Я разработчик БД. Пользователь в нее не пишет он только получает оттуда информацию. Каждую неделю я  выкладываю по адресу http://xxx.ru/ новую версию БД. Как из программы обновить БД для пользователя?


 
Anatoly Podgoretsky ©   (2004-02-24 21:12) [27]

Обычное получение файлов из Интернета, компонент для этого множество, выбирай любой по вкусу в зависимости от протокола, но видимо это http или пусть пользователь сам забирает со страницы.


 
Nous Mellon ©   (2004-02-24 21:23) [28]


> Обычное получение файлов из Интернета, компонент для этого
> множество, выбирай любой по вкусу в зависимости от протокола,
> но видимо это http или пусть пользователь сам забирает со
> страницы.

То есть этот процесс я представляю себе так:
1. Скачиваю файл в темп директорию
2. Коннектюсь к этой БД
3. Обновляю нужные таблицы
4. Дисконнект и удаление файла
А какой из стандартных компонентов порекомендуете? На ваш вкус и попроще мне же всего один два файла скачать :)


 
Anatoly Podgoretsky ©   (2004-02-24 21:46) [29]

2. 3. 4. 5. CopyFile если это полная копия, а если обновление, то по твоей схеме, тогда это репликация.


 
Nous Mellon ©   (2004-02-24 22:25) [30]


>  а если обновление, то по твоей схеме, тогда это репликация.

А каким стандартным компонентом ее осуществить?


 
Anatoly Podgoretsky ©   (2004-02-24 22:29) [31]

Стандартными, теми же которыси ты используешь для основной работы.


 
Nous Mellon ©   (2004-02-25 07:13) [32]


> Стандартными, теми же которыси ты используешь для основной
> работы.

А... Там есть методы для репликации через www?


 
SPIRIT ©   (2004-02-25 07:49) [33]

нет ... только http


 
Nous Mellon ©   (2004-02-25 13:04) [34]


> нет ... только http

Я это и имел в виду


 
Anatoly Podgoretsky ©   (2004-02-25 13:11) [35]

Nous Mellon ©   (25.02.04 07:13) [32]
Репликация делается свойствами движка, а получение любыми Инернет/TCP компонентами, а так как ты не говоришь про ОС и Дельфи, то и не сказать какие можно использовать, но их много начиная от АПИ и до ActiveX


 
Nous Mellon ©   (2004-02-25 14:35) [36]


>  так как ты не говоришь про ОС и Дельфи

OC: 98, 2000, XP
Delphi 6 Enterprise
Что теперь скажите?



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

Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.53 MB
Время: 0.038 c
3-1077171427
Василий
2004-02-19 09:17
2004.03.28
DBase и прерывания


7-1072876337
Alibaba
2003-12-31 16:12
2004.03.28
Thread


11-1057079896
mox
2003-07-01 21:18
2004.03.28
Timer


14-1077965066
Макын
2004-02-28 13:44
2004.03.28
Visual C++


1-1078558516
YurikGl
2004-03-06 10:35
2004.03.28
qtintf70.dll





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский