Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Поле1+поле2+поле3=уникальное значение. / 10 сообщений из 10, страница 1 из 1
18.04.2005, 11:01
    #33020536
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
Есть ли в MySQL возможность задать полям такие пораметры, чтобы
Если уже есть запись, где Поле1=x, поле2=y, поле3=z ...................
Чтобы не добавлялась запись где Поле1=x, поле2=y, поле3=z
Тоесть, чтобы уникальной была их комбинация.
...
Рейтинг: 0 / 0
18.04.2005, 12:26
    #33020744
Johnmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
Это "возможность" есть везде. Называется уникальный индекс.
В данном случае - по трём полям...

...
Рейтинг: 0 / 0
18.04.2005, 12:48
    #33020834
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
Просто создаем составной индекс и все?

Это делается с пом. CREATE INDEX ?
Пожалуйста, синтаксис для полей а1, а2 и а3.
...
Рейтинг: 0 / 0
18.04.2005, 13:04
    #33020890
Johnmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
нажми меня
Да и вообще, изучи сначала всё, что там есть...
...
Рейтинг: 0 / 0
18.04.2005, 13:56
    #33021062
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
спасибо
...
Рейтинг: 0 / 0
18.04.2005, 14:04
    #33021095
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
В принципе, всеи понятно и такой вариант устраивает, но охота пофилософствовать.

Там написано:
Величины индексов формируются путем конкатенации величин указанных столбцов.

Ситуация :

а1 = 123
а2 = 456
а3 = 789

и

а1=1234567
а2=8
а3=9
Конкатенация будет одинакова. Я так понимаю, индексы тоже. Выходит, результат противоречит логике?
...
Рейтинг: 0 / 0
18.04.2005, 14:07
    #33021100
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
В предыдущем посте я имел в виду текстовие значения. Цифры употребил для облегчения восприятия.
...
Рейтинг: 0 / 0
18.04.2005, 14:28
    #33021171
Хрен
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
нет. Duplicate entry будет только если именно поля одинаковые.

Легко же проверить..
...
Рейтинг: 0 / 0
18.04.2005, 16:29
    #33021574
Johnmen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
"Индексная конкатенация" учитывет размерность поля
а1 varchar(8), а2 varchar(4), а3 varchar(3)

а1 = 123
а2 = 456
а3 = 789
123_____456_789
и
а1=1234567
а2=8
а3=9
1234567_8___9__
...
Рейтинг: 0 / 0
18.04.2005, 18:50
    #33021914
ser78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поле1+поле2+поле3=уникальное значение.
Я понял.
Всем спасибо.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Поле1+поле2+поле3=уникальное значение. / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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