
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
25.11.2013, 21:02:05
|
|||
|---|---|---|---|
|
|||
Enum_Set отличия |
|||
|
#18+
Подскажите, в чем отличие ENUM от SET? И в чем вообще суть этих типов данных? Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2013, 21:12:55
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
enum - тип перечислимых значений. В дополнение к описанным включает null и пустую строку. set - битовая маска перечислимых значений. В дополнение к описанным включает только null. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2013, 21:27:52
|
|||
|---|---|---|---|
|
|||
Enum_Set отличия |
|||
|
#18+
Akina т.е если мы выполним запрос CREATE TABLE "t1" ("en1", ENUM ("orange", "apple", "grape") NOT NULL) то создастся таблица t1 со столбцом en1, который содержит значения "orange", "apple", "grape"? правильно? а если запрос будет такой: CREATE TABLE "t1" ("en1", SET("orange", "apple", "grape") NOT NULL) то что произойдет в этом случае? в чем отличия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2013, 22:15:16
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
Hanna_Urievna, перечислимые значения - "одно из" в каждый конкретный момент времени. То есть поле может содержать или то или другое. Этакая замена выделенному справочнику значений. Но, в отличии от нормальной таблицы-справочника поля, определенные как один тип таковыми на практике не являются. множество - "любая комбинация из" возможных значений. Каждое значение представлено своим битом из 64-х возможных. Могут одновременно присутствовать несколько. От себя: пробовал делать SET, ожидалось, что можно работать как с обычной битовой маской. Фиг-то там. Привозврате из подзапроса на уровень выше - получаем строку и с битовыми операциями, например групповыми оно не сочетается никак. и то и другое в реализации по сути - строки. В целом сложилось впечатление что оба типа - недоделанные залипухи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2013, 23:43:04
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
Hanna_UrievnaAkina т.е если мы выполним запрос CREATE TABLE "t1" ("en1", ENUM ("orange", "apple", "grape") NOT NULL) то создастся таблица t1 со столбцом en1, который содержит значения "orange", "apple", "grape"? правильно? а если запрос будет такой: CREATE TABLE "t1" ("en1", SET("orange", "apple", "grape") NOT NULL) то что произойдет в этом случае? в чем отличия? Во втором случае возможно Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.11.2013, 23:48:58
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
Arhat109сложилось впечатление что оба типа - недоделанные залипухи.В общем да. enum - просто перенесение функционала подстановки с клиента на сервер. Впрочем, с учётом отдаваемого типа профит сомнительный. Хотя можно рассматривать как избавление от дополнительного джойна для небольшого статического словаря. А вменяемого использования set мне вообще не попадалось. И даже с использованием Make_Set и Find_In_Set тоже ничего осмысленного не придумывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.11.2013, 10:59:59
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
Hanna_UrievnaПодскажите, в чем отличие ENUM от SET? И в чем вообще суть этих типов данных? Заранее спасибо! Да не используй ты эту хрень. Простое поле с check constraint универсальнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.11.2013, 11:18:15
|
|||
|---|---|---|---|
Enum_Set отличия |
|||
|
#18+
MasterZivПростое поле с check constraint универсальнее.В других СУБД - может быть. А вот в MySQL check constraint не работают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&tablet=1&tid=1835658]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
30ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 194ms |
| total: | 283ms |

| 0 / 0 |
