2016-06-28 1 views
1

Мне нужна ваша помощь, я немного в беде.SQL, как обрабатывать структурированную информацию

У меня есть «структурированная» информация, которая должна быть уникальной для всех полетов, но не может быть уникальной индивидуально.

Например:

Колонны: Two_Letters | Firts_Digit | Second_Digit | Third_Digit | Four_Letters

Я хочу, чтобы запись AA|2|3|4|BBBB была уникальной, но я могу вставить AA|2|3|4|CCCC.

Очевидно буквы могут варьироваться в зависимости от А до Z и цифры от 0 до 9.

внушения?

+4

Не храните эти значения в БД в виде конкатенированных строк, но разделите их на отдельные столбцы. В этом случае вы сможете создать уникальный ключ в этих столбцах. –

+2

Добавьте уникальное ограничение, уникальное (Two_Letters, Firts_Digit, Second_Digit, Third_Digit, Four_Letters) ', к вашей таблице. – jarlh

+0

@ AndyKorneyev - это не конкатенированные строки, и в этом проблема. У меня есть строка кода, структурированная, которую я выбираю для разделения в столбцах (который я назвал «Поле» в первом сообщении) К JARLH: У меня есть уникальные данные из запроса и через mysql workbench gui, и если я (AA, 1,2,3, AAAA) и (AA, 1,3,4, BBBB) У меня есть обратная ошибка для «дублирования записи» в первом столбце – z10h22

ответ

0

THINK SOLVED: Поскольку я выполнил все изменения с помощью MySQL Workbench, я не рассматриваю различия между «checkbox UNIQUE», связанными с каждым столбцом, и «уникальным ограничением», которое действительно то, что я искал. Поэтому решение для моей проблемы: -ALTER ТАБЛИЦА table_name ADD CONSTRAINT UNIQUE (Two_Letters, Firts_Digit, Second_Digit, Third_Digit, Four_Letters); , связанный без флажка, установленного для «UQ» в таблице редактирования gui в MySQL WB.

Смежные вопросы