Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Уникальный индекс для изменяемой записи

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Snewer
Отправлено: 27 Марта, 2014 - 12:47:48
Post Id



Гость


Покинул форум
Сообщений всего: 117
Дата рег-ции: Июнь 2013  
Откуда: РФ, Татарстан


Помог: 1 раз(а)




Здравствуйте!

Имеется таблица (id, hash, var1, var2 ...)
В hash хранится некий динамично изменяемый хэш и записывается в куки. При следующем обращении к скрипту, он в таблице ищет данный хэш, извлекает данные, устанавлвает новый хэш.

Хэш уникальный. Будет ли лучше, если добавить к данному столбцу уникальный индекс?

Спасибо.
 
 Top
Мелкий Супермодератор
Отправлено: 27 Марта, 2014 - 13:08:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Раз данные должны быть уникальны - уникальный индекс обязателен. Иначе рано или поздно данные уникальными быть перестанут.


-----
PostgreSQL DBA
 
 Top
Snewer
Отправлено: 27 Марта, 2014 - 13:11:53
Post Id



Гость


Покинул форум
Сообщений всего: 117
Дата рег-ции: Июнь 2013  
Откуда: РФ, Татарстан


Помог: 1 раз(а)




Уникальный он в любом случае. Добавляя индекс производительность возрастет?
(Добавление)
Запись в hash может отсутствовать.. Уникальный индекс добавить не получится. А если добавить просто индекс? Скорость выборки по данному столбцу вырастет?
 
 Top
Мелкий Супермодератор
Отправлено: 27 Марта, 2014 - 13:27:37
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




hash не уникален. GUID и тот не уникален.

Snewer пишет:
Запись в hash может отсутствовать.. Уникальный индекс добавить не получится

В рамке СУБД null-значения уникальны всегда. Потому уникальный constraint может содержать много null-значений, не являясь ошибкой.


-----
PostgreSQL DBA
 
 Top
EuGen Администратор
Отправлено: 27 Марта, 2014 - 13:33:53
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Snewer пишет:
Скорость выборки по данному столбцу вырастет?

Нет. Скорость будет ровно такой же, как для обычного индекса. Отличие лишь в запрете дублей.

Надобность в индексе зависит от того, для чего Вы храните данные. Если просто ради самого хранения (то есто поиска не планируется) - индекс не нужен и даже вреден (поскольку замедляет вставки)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Snewer
Отправлено: 27 Марта, 2014 - 13:35:13
Post Id



Гость


Покинул форум
Сообщений всего: 117
Дата рег-ции: Июнь 2013  
Откуда: РФ, Татарстан


Помог: 1 раз(а)




#1062 - Duplicate entry 'null' for key 'usr-session-id'

Не могу выставить null. В чем подвох? И как значение по-умолчанию не высталвяется
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB