Форум Херсона. Форум Херсонской молодежи, флейм, фотографии Херсона, политика в Херсоне, сетевой форум, сети Херсона


Приветствуем на Форум Херсона. Форум Херсонской молодежи..

На данный момент Вы находитесь на форуме как Гость и имеете очень ограниченные возможности и права. Что бы писать или отвечать в темах, загружать картинки, файлы на форуме Вам нужно зарегистрироваться, что совершенно бесплатно. Регистрация очень быстрая, не откладывайте эту процедуру!

Если возникнут проблемы с регистрацией напишите нам.

Галерея форума Блоги пользователей Список банов
Вернуться   Форум Херсона. Форум Херсонской молодежи. > > >
Регистрация СправкаСтатистика Пользователи Календарь Сообщения за день

Программирование Все вопросы по написанию программ

Тема: Индексациия Ответить в теме
Ваше имя пользователя: Для входа нажмите здесь
Проверка вопроса системы антиспама "NoSpam!"
Краще місто в Україні?
Image Verification
Пожалуйста, введите шесть букв и/или цифр, которые изображены на картинке.

Заголовок:
  
Сообщение:
Иконки для сообщения
Вы можете выбрать иконку, характеризующую сообщение:
 

Дополнительные опции
Другое

Просмотр темы (Новые вначале)
20.10.2007 22:25
NLO34
Цитата:
Сообщение от Робот Вертер Посмотреть сообщение
2NLO34
Индексы слабое место в Дельфе - это ты весело пошутил
мда, действительно. я просто столкнулся с проблемой индексов, и спихнул все на делфу. вникать глубже и разбирать что за что отвечает не стал. спасибо за ремарку)
17.10.2007 16:50
zwitter TComboBox::Sorted ? true ?

хотя тут оно посортирует по алфавиту, а тебе надо по возрастанию дат. так что советую отсортировать даты и засвинячить туда. а потом думать как организовать корректное добавление в список
17.10.2007 15:50
Debian Google can help you
16.10.2007 20:28
Shooter итак, есче один вопрос. У меня есть ComboBox заполненый датами, перед этим преобразоваными в стринг, тоесть каждая запись имеет формат dd.mm.yyyy. Вопрос - как отсортировать их по возрастанию? либо может есть какой компонент типа ComboDateBox
16.10.2007 19:59
Робот Вертер
Цитата:
Сообщение от TIGR Посмотреть сообщение
мне религия всё позволяет просто изначально спрашивающий отказался от TQuery. я собсвенно и писал что лучше использовать именно запросы и компонент TQuery.
Та я ж не про тебя =) Я про него =) Я думал ты в курсе его религиозных догм =)
16.10.2007 19:58
TIGR
Цитата:
Сообщение от Робот Вертер Посмотреть сообщение
А почему такое ограничение? Юзать при решении задачи TTable - это догма какаято? Обратиться к TQuery религия не позволяет? =)
мне религия всё позволяет просто изначально спрашивающий отказался от TQuery. я собсвенно и писал что лучше использовать именно запросы и компонент TQuery.
16.10.2007 19:53
Робот Вертер
Цитата:
Сообщение от TIGR Посмотреть сообщение
это конечно можно тока ты уточняй что это sql-запрос, и ему надо было средсвами TTable а не TQuery.
А почему такое ограничение? Юзать при решении задачи TTable - это догма какаято? Обратиться к TQuery религия не позволяет? =)
16.10.2007 19:52
Робот Вертер Тигр короче все уже успел написать =)

2Шутер
Ты глубже старайся разбираться с тем с чем работаешь.
А то вопросы действительно выглядят как "я тут чето поклацал мышкой на визуальных объектах, и у меня код не компилится".
Если занялся работой с БД разберись хоть с чем ты конкретно работаешь.
БД существует огромное множество. И скл-ориентированных и более тупых.

2NLO34
Индексы слабое место в Дельфе - это ты весело пошутил
Вообщето индексы делают с данными, а за их хранение и передачу отвечает не Дельфя, а транспорт, который ты юзаешь для подключения к данным. ADO например. Вообще Парадоксовские базы - это древность несусветняя. Юзать их можно только на самом начальном этапе, чтоб научиться вообще с данными работать.
Потом переходи на чтото скл-евое. Там и индексы рисовать нада. В самих таблицах, а вовсе не в Дельфе. Дельфя получает то, что ты написал в запросе, через тот транспорт, что ты выбрал, а он юзает те индексы, что ты описал в своих таблицах.
15.10.2007 20:33
TAVI$K@R()N в следующий раз - обязательно)))
15.10.2007 19:58
TIGR
Цитата:
Сообщение от TAVI$K@R()N Посмотреть сообщение
еще кстате можно проще делать: есть команда криэйт индекс :

create index название_индекса on название_таблицы (название_столбца)
это конечно можно тока ты уточняй что это sql-запрос, и ему надо было средсвами TTable а не TQuery.
15.10.2007 19:08
TAVI$K@R()N еще кстате можно проще делать: есть команда криэйт индекс :

create index название_индекса on название_таблицы (название_столбца)
06.10.2007 19:37
NLO34 Когда первый раз столкнулся с индексаций вообще не понял нах она нужна.)))
по сути: индексы одно из слабых мест в делфе. у меня была проблемма когда из-за дата создания индексов (я удалял старые, добавлял новые) не раобтала полноценно сама база. (точнее прога с ней связанная) поэтому если тебе понадобится всячески менять или пересоздавать индексные файлы учти эту особенность.
06.10.2007 12:11
Shooter TIGR, выражаю благодарность, действительно помог разобраться кое в чем, учитывая что с базами только недавно работать начал, вобщем спасибо тебе
06.10.2007 11:18
TIGR
Цитата:
Сообщение от Shooter Посмотреть сообщение
TQuery c таблицами отдельно не работает, только с таблицами в базах, а у меня отдельная таблица, а дефоултвоская это знач ttDefault, *.db.

Процедурка AddIndex сама по себе не работает, перед ее использованием как минимум нужно деактивировать и открыть таблицу, + сделать Exclusive:=True, но даже при всем этом индексировать отказываеться, возможно потому что таблица создаеться при начале выполнения программы, хотя чего я уже только не пробывал...
что значит отдельно с таблицами не работает?? у тебя есть база данных с таблицами и ты с помощью TQuery и SQL делаешь всё что хочешь.

ты хочешь сказать что ты создаешь таблицу во время выполнения программы и хочешь добавить индексированое поле?


ps

Свойство TableType имеет тип TTableType и определяет тип таблицы в базе данных. Если это свойство установлено в ttDefault, тип таблицы определяется по расширению файла, содержащего эту таблицу:

Расширение .DB или без расширения: таблица Paradox
Расширение .DBF : таблица dBASE
Расширение .TXT : таблица ASCII (текстовый файл).

-------------------------------------------------------
Если Вы желаете индексировать таблицу по одному или нескольким полям, используйте метод Add для свойства IndexDefs, которое, как можно догадаться, также является объектом, т.е. экземпляром класса TIndexDefs. Свойство IndexDefs для существующей таблицы содержит информацию обо всех индексах таблицы. Эта информация доступна только в режиме выполнения и хранится в виде массива экземпляров класса TIndexDef, хранящих данные об индексах таблицы. Число индексов определяется свойством Count, а доступ к элементам массива осуществляется через свойство Items:
property Items[Index: Integer]: TIndexDef;


Метод Add класса TIndexDefs имеет следующий вид:
procedure Add(const Name, Fields: string;
Options: TIndexOptions);


Параметр Name, имеющий тип string, определяет имя индекса. Параметр Fields (также имеющий тип string) обозначает имя поля, которое должно быть индексировано, т.е. имя индексируемого поля. Составной индекс, использующий несколько полей, может быть задан списком имен полей, разделенных точкой с запятой “;”, например: ‘Field1;Field2;Field4’. Последний параметр - Options - определяет тип индекса. Он может иметь набор значений, описываемых типом TIndexOptions:
TIndexOptions = set of (ixPrimary, ixUnique, ixDescending,

ixCaseInsensitive, ixExpression);

...

Следует отметить, что для формата Paradox опция ixUnique может использоваться только вместе с опцией ixPrimary

пример:
Код:
with Table1 do 

begin 

DatabaseName:='dbdemos'; 

TableName:='mytest'; 

TableType:=ttParadox; 

{Создать поля} 

with FieldDefs do 

begin 

Add('Surname', ftString, 30, true); 

Add('Name', ftString, 25, true); 

Add('Patronymic', ftString, 25, true); 

Add('Age', ftInteger, 0, false); 

Add('Weight', ftFloat, 0, false); 

end; 

{Сгенерировать индексы} 

with IndexDefs do 

begin 

Add('I_Name', 'Surname;Name;Patronymic', 
[ixPrimary, ixUnique]); 

Add('I_Age', 'Age', [ixCaseInsensitive]); 

end; 

CreateTable; 

end;
06.10.2007 09:00
Shooter
Цитата:
Сообщение от TIGR Посмотреть сообщение
я так понимаю ты подлючаешь файлы с расширением *.db, эт парадоксовские файлы, для того чтобы добавить индексы в существующую базу у компонента TTable есть метод: procedure AddIndex(const Name, Fields: string;
Options: TIndexOptions);
вот его и используй.

зы вообще лучше и правильней использовать TQuery.
TQuery c таблицами отдельно не работает, только с таблицами в базах, а у меня отдельная таблица, а дефоултвоская это знач ttDefault, *.db.

Процедурка AddIndex сама по себе не работает, перед ее использованием как минимум нужно деактивировать и открыть таблицу, + сделать Exclusive:=True, но даже при всем этом индексировать отказываеться, возможно потому что таблица создаеться при начале выполнения программы, хотя чего я уже только не пробывал...
05.10.2007 23:12
TIGR я так понимаю ты подлючаешь файлы с расширением *.db, эт парадоксовские файлы, для того чтобы добавить индексы в существующую базу у компонента TTable есть метод: procedure AddIndex(const Name, Fields: string;
Options: TIndexOptions);
вот его и используй.

зы вообще лучше и правильней использовать TQuery.
05.10.2007 22:59
TIGR
Цитата:
Сообщение от Shooter Посмотреть сообщение
мне нужно проиндексировать самую обычную дефоултовскую базу, подключена она действительно в бде и отображаеться в ттейбл
что ты имеешь ввиду под словом "дефоултовскую", таких нет.
05.10.2007 22:57
TIGR
Цитата:
Сообщение от Spayder Посмотреть сообщение
у меня вот вопрос трудно ли написать прогу например в неё вводиш ссылку определенную на сайт а она выдает тебе инфу которую она берет из хтмл кода код не меняецся от определенной начала до другой точки ?
не трудно
05.10.2007 20:44
Snaiper
Цитата:
Сообщение от Shooter Посмотреть сообщение
на виндоусе можно программировать???)))))
поетому и фореве )))
05.10.2007 20:20
Shooter
Цитата:
Сообщение от TIGR Посмотреть сообщение
наверное ты хочешь индексировать непосредсвено в твоей проге парадоксовскую таблицу, подключенную средсвами бде, и отображенную в TTable. так?
мне нужно проиндексировать самую обычную дефоултовскую базу, подключена она действительно в бде и отображаеться в ттейбл
05.10.2007 20:16
Spayder вот из html кода чтоб брало:
05.10.2007 20:09
Spayder у меня вот вопрос трудно ли написать прогу например в неё вводиш ссылку определенную на сайт а она выдает тебе инфу которую она берет из хтмл кода код не меняецся от определенной начала до другой точки ?
05.10.2007 19:51
TIGR наверное ты хочешь индексировать непосредсвено в твоей проге парадоксовскую таблицу, подключенную средсвами бде, и отображенную в TTable. так?
05.10.2007 19:32
Keller какую таблицу? а то я не врубил...
05.10.2007 19:25
Shooter на виндоусе можно программировать???)))))
05.10.2007 18:54
Snaiper Windows-forever =)))
05.10.2007 17:31
Shooter
Индексациия

Привет парни, кто подскажет как програмно проиндексировать таблицу в делфе?

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

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

Время на сервере: 06:31.

Регистрация Справка Пользователи Календарь Сообщения за день

vBulletin 3, Copyright © 2000-2024, Jelsoft Enterprises Ltd.
Русский перевод: zCarot, Vovan & Co