Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Для чего нужно ключевое поле / 19 сообщений из 19, страница 1 из 1
04.11.2004, 11:46:24
    #32768328
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
Для чего нужно определять ключевое поле?
Если поле - индeкcиpoвaннoe (Coвпaдeния нe дoпycкaютcя) То зачем говорить что оно ключевое?
Ну ключик нарисуется, жирным шрифтом отобразится. А на скорости выполнения запросов это скажется? Или какие то запросы не будут работать?
...
Рейтинг: 0 / 0
04.11.2004, 11:47:42
    #32768332
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
Это шутка? :)
...
Рейтинг: 0 / 0
04.11.2004, 11:48:56
    #32768337
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
ключи могут быть обращены наружу
...
Рейтинг: 0 / 0
04.11.2004, 11:50:02
    #32768348
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
то что поле ключевое - используется как признак что по этому полю можно производить однозначную идентификацию конкретной записи
и используется для синхронизации в объектах доступа к данным

а уникальных индексированных может быть несколько
...
Рейтинг: 0 / 0
04.11.2004, 11:51:06
    #32768353
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
это я про первичный внутренний ключ
...
Рейтинг: 0 / 0
04.11.2004, 12:04:05
    #32768388
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
2 Kelme
Это не шутка. БД только для чтения. Вот и подумалось мне - зачем ей указывать ключевое поле это или нет.
2 АлексейК
Для "однозначной идентификации конкретной записи" может быть использовано любое поле имеющее уникальные записи. И вообще вопрос не про это.

Была БД в её таблицах были поля - счётчики, выполнявшие роль ключевых полей.
Из этой БД создана новая БД только для чтения. Соответственно поля-счётчики заменил на числовые, а вот какой мне прок от иконок с ключиками не пойму. Они мне в принципе не мешают :) , но хочется разобраться как это влияет на скорость выполнения запросов и работоспособность БД.
...
Рейтинг: 0 / 0
04.11.2004, 12:09:06
    #32768404
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
без ключиков многое перестанет работать - например при линке mdb+ mdb индексы не рулят
...
Рейтинг: 0 / 0
04.11.2004, 12:15:45
    #32768423
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
Shuhardбез ключиков многое перестанет работать - например при линке mdb+ mdb индексы не рулят
т.е. Access не видит обычных индексов в прилинкованной таблице?
А что ещё перестанет работать?
...
Рейтинг: 0 / 0
04.11.2004, 12:44:46
    #32768512
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
1 вопрос с перебором - при проектировании системы ключи и нормализация основа
2 да отпадут те-же списки - не выделишь строку

индекс нужен Jet для оптимизации
ключ для выборки
...
Рейтинг: 0 / 0
04.11.2004, 13:14:08
    #32768604
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
Дык, Access у меня полько как БД. Оболочка на VB.
Похоже что ключевые поля мне не пригодятся. Выборку я организую через ADO, используя хранимые запросы. А запросу видимо пофигу с ключиком это поле или нет, главное чтобы индекс был.
...
Рейтинг: 0 / 0
04.11.2004, 13:38:21
    #32768685
Для чего нужно ключевое поле
Дополнительные сведения...
Таблицу, в которой не определен ключ, нельзя использовать при установлении межтабличных связей; кроме того, поиск и сортировка в такой таблице выполняются медленнее.

вот мне не понятно только, "поиск и сортировка в такой таблице выполняются медленнее" зависимо|независимо от инструментов выборки|сортировки?
...
Рейтинг: 0 / 0
04.11.2004, 13:45:10
    #32768708
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
marvanДык, Access у меня полько как БД. Оболочка на VB.
Похоже что ключевые поля мне не пригодятся. Выборку я организую через ADO, используя хранимые запросы. А запросу видимо пофигу с ключиком это поле или нет, главное чтобы индекс был.
1 запросу НЕ пофигу - связь через НЕ ключевые поля работает в разы медленнее
2 ключи НЕ нужны ,если в системе 1 (но очень широкая таблица)
...
Рейтинг: 0 / 0
04.11.2004, 14:27:13
    #32768851
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
как раз для ado primary key и нужен
нужен он чтобы ресинхронизировать и обновлять данные
попробуй рекордсету сделать resync без первичного ключа
...
Рейтинг: 0 / 0
04.11.2004, 15:17:45
    #32769000
N_A
N_A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
А я дурак всегда считал, что первичный ключ есть кластерный индекс соответственно которому записи ФИЗИЧЕСКИ хранятся в файле.
...
Рейтинг: 0 / 0
04.11.2004, 17:26:02
    #32769330
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
Shuhardзапросу НЕ пофигу - связь через НЕ ключевые поля работает в разы медленнее
проверял в БД формата Access97 на запросах с WHERE ... Like... и WHERE ...=...
С ключами и без, с ADO и DAO - никакой зависимости скорости от наличия ключа не обнаружил.
...
Рейтинг: 0 / 0
04.11.2004, 17:37:41
    #32769361
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
marvan Shuhardзапросу НЕ пофигу - связь через НЕ ключевые поля работает в разы медленнее
проверял в БД формата Access97 на запросах с WHERE ... Like... и WHERE ...=...
С ключами и без, с ADO и DAO - никакой зависимости скорости от наличия ключа не обнаружил.
1 - причём здесь формат mdb ?
2 - ну напиши джойн по текстовым полям и будет дельта !!!
...
Рейтинг: 0 / 0
04.11.2004, 17:57:02
    #32769399
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
2Shuhard
спасибо за совет, но связывать таблицы по текстовым полям - не мой метод.
2All
Спасибо за обсуждение. Понял, что от наличия ключевых полей хуже ни кому не стало. А вообще я в ужасе. Во время тестирования обнаружил, что DAO в два раза быстрее ADO выполняет запросы с LIKE, да и с другими запросами работает тоже быстрее... Мне завтра проект (~5тыс. строк) ADO на DAO переводить, а я с ним года три не работал.
...
Рейтинг: 0 / 0
05.11.2004, 09:53:44
    #32769970
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
авторпроект (~5тыс. строк

может миллионов?
...
Рейтинг: 0 / 0
05.11.2004, 11:56:39
    #32770308
marvan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Для чего нужно ключевое поле
2АлексейК
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Для чего нужно ключевое поле / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]