SQL, создание индекса

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Андрей гость
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 21.09.2005 (Ср) 21:11

SQL, создание индекса

Сообщение Андрей гость » 11.10.2005 (Вт) 21:32

Требуется помощь. База Access. SQL запрос на создание таблицы из запроса Z1:
Select A, B, C Into T1
From Z1.
Как добавить в новую таблицу Т1 с помощью этого запроса индексное поле В (счетчик, совпадения не допускаются)?
Мастера помогите.
[/syntax]
Ученье свет, а не ученых тьма!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.10.2005 (Вт) 21:42

С помощью этого запроса - никак, ибо в access нельзя написать более одной команды SQL в одном запросе.
А что, разве поле B уже не там?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Андрей гость
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 21.09.2005 (Ср) 21:11

Сообщение Андрей гость » 11.10.2005 (Вт) 21:53

Здравствуй GSerg.
В базе существует связь с внешней таблицей в которой данные постоянно обновляются.
Я делаю запрос на создание таблицы (уже внутренней, для того чтобы дальше с ней работать) к этой базе, но мне надо добавить индексное (уникальное) поле.
Понятно что можно зайти и создать его в режиме конструктора,
но как это сделать програмно?
Помоги.
Ученье свет, а не ученых тьма!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.10.2005 (Вт) 22:14

Что ты понимаешь под индексным полем? Тебе надо добавить индекс к существующему или создать новое поле для индекса?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Андрей гость
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 21.09.2005 (Ср) 21:11

Сообщение Андрей гость » 11.10.2005 (Вт) 22:23

Надо создать новое поле для индекса, поле счетчик.
А может я чего то не понимаю в индексах.
Есть поля: фамилия, имя, отчество. Записи в этих полях могут повторятся, значит надо добавить поле счетчик чтобы записи там были уникальными, по которым можно будет идентифицировать человека. Может быть можно по другому?
Ученье свет, а не ученых тьма!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.10.2005 (Вт) 22:25

Может быть.

Код: Выделить всё
ALTER TABLE Table1 ADD COLUMN RowID AUTOINCREMENT NOT NULL CONSTRAINT PrimaryKey PRIMARY KEY
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Андрей гость
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 21.09.2005 (Ср) 21:11

Сообщение Андрей гость » 11.10.2005 (Вт) 22:41

Большое спасибо.
Последний вопрос.
А если в этой таблице полтора миллиона записей, сработает этот запрос?
Ученье свет, а не ученых тьма!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 11.10.2005 (Вт) 22:45

Если этот запрос сработал на 5 записях, он сработает на любом количестве...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Андрей гость
Новичок
Новичок
 
Сообщения: 42
Зарегистрирован: 21.09.2005 (Ср) 21:11

Сообщение Андрей гость » 11.10.2005 (Вт) 22:57

Когда заходишь в тупик, есть к кому обратиться. Это хорошо. Спасибо.
Ученье свет, а не ученых тьма!

SUPchik
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 51
Зарегистрирован: 15.10.2008 (Ср) 21:46
Откуда: Луховицы

Re: SQL, создание индекса

Сообщение SUPchik » 04.11.2010 (Чт) 22:51

Похожий вопрос. Почти всё тоже самое(данные в таблицу заносятся с помощью запроса на добавление),отличие в том, что поле счетчик в таблице уже создано. Хотелось бы узнать как программно автоматически прибавлять счетчик,если через запрос на добавление в это поле ничего не заносится?
Нет ни одной надёжной системы безопасности!!!

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: SQL, создание индекса

Сообщение VVitafresh » 11.11.2010 (Чт) 19:16

Если это автоинкрементное поле (в аксесе тип "Счетчик"), то значение ему присваивается автоматически при вставке записи. Если это обычное поле и нужно программно реализовать свой счетчик, то читайте здесь:
Что мы знаем про каунтеры (aka счетчики)
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

SUPchik
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 51
Зарегистрирован: 15.10.2008 (Ср) 21:46
Откуда: Луховицы

Re: SQL, создание индекса

Сообщение SUPchik » 12.11.2010 (Пт) 14:04

VVitafresh, спасибо за информацию
Нет ни одной надёжной системы безопасности!!!


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 231

    TopList