Выбрать значение из заранее определенной таблицы

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
ndemidov
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 285
Зарегистрирован: 14.11.2007 (Ср) 16:23
Откуда: Earth planet

Выбрать значение из заранее определенной таблицы

Сообщение ndemidov » 16.01.2016 (Сб) 16:28

Доброго времени суток) Как лучше хранить картинки: в базе данных как бинарные данные или же в файловой системе, а в БД хранить относительную (или абсолютную) ссылку на картинку?

О проекте: Он будет в виде сайта и картинок будет очень много.
Не лучше ли в этом случае второй вариант (не проще ли в этом случае будет отдавать ссылку на картинку на клиент)?

Пробегу ссылки, но может вы что-то посоветуете проверенное.


И второй вопрос:
Есть таблица (см. картинку), содержащая поля "Type" и "Value". "Type" может быть улицей, районом или городом. Как сделать так, что если "Type" соответствует типу "Улица", то можно было бы выбрать конкретное значение ("Орджоникидзе", "Мичурина") только из определённого списка? Соответственно, если Type соответствует типу "Город", то можно было бы выбрать значение только из списка городов. Аналогично и для района.

И это проверялось бы не программно, а через БД. Вопрос - как это сделать?
Вложения
Безымянный.png
Безымянный.png (14.91 Кб) Просмотров: 2674
Последний раз редактировалось ndemidov 16.01.2016 (Сб) 16:50, всего редактировалось 1 раз.
Большинство людей не понимает, что великое многообразие и красочность мира будут служить им крепчайшей душевной поддержкой на протяжении всей жизни. Иван Ефремов

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Выбрать значение из заранее определенной таблицы

Сообщение alibek » 16.01.2016 (Сб) 16:31

Базы данных разные бывают.
Для MySQL я думаю что лучше хранить ссылки на файлы.
Lasciate ogni speranza, voi ch'entrate.

ndemidov
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 285
Зарегистрирован: 14.11.2007 (Ср) 16:23
Откуда: Earth planet

Re: Выбрать значение из заранее определенной таблицы

Сообщение ndemidov » 16.01.2016 (Сб) 16:50

MSSQL будет
Большинство людей не понимает, что великое многообразие и красочность мира будут служить им крепчайшей душевной поддержкой на протяжении всей жизни. Иван Ефремов

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Выбрать значение из заранее определенной таблицы

Сообщение iGrok » 17.01.2016 (Вс) 0:31

Думаю, для MSSQL тоже лучше файл+ссылка.
Вообще, хранение картинки прямо в БД (на мой взгляд) - достаточно специфическая штука, полезная в ограниченном кол-ве случаев.
label:
cli
jmp label

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Выбрать значение из заранее определенной таблицы

Сообщение iGrok » 17.01.2016 (Вс) 2:01

А вот по второму вопросу.. Я, конечно, не спец по MSSQL, но по-моему на уровне БД - никак. Только бизнес-логикой на уровне приложения.
label:
cli
jmp label

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Выбрать значение из заранее определенной таблицы

Сообщение alibek » 18.01.2016 (Пн) 9:37

Если сервер под БД нормальный и есть DBA, то лучше хранить прямо в БД. БД лучше умеет работать с большим числом объектов, чем файловая система.
Иначе файл+ссылка.
Lasciate ogni speranza, voi ch'entrate.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Выбрать значение из заранее определенной таблицы

Сообщение alibek » 18.01.2016 (Пн) 9:41

iGrok писал(а):Я, конечно, не спец по MSSQL, но по-моему на уровне БД - никак.

Ну почему же.
На уровне foreign key — никак.
А на уровне constraint или триггера можно попробовать.
Только не стоит так делать. Вместо Value лучше использовать разные столбцы (Value_Улица, Value_Район, Value_Город).
Lasciate ogni speranza, voi ch'entrate.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Выбрать значение из заранее определенной таблицы

Сообщение iGrok » 30.01.2016 (Сб) 23:33

alibek писал(а):А на уровне constraint или триггера можно попробовать.

Тогда нужно понять, что имеется в виду под
ndemidov писал(а):можно было бы выбрать значение только из списка городов


На уровне constraint/триггера можно ограничить "сохраняемые" значения. А фразу "можно было выбрать" можно понимать по-разному.

Впрочем, в любом случае, действительно
alibek писал(а):не стоит так делать.
label:
cli
jmp label


Вернуться в Народный треп

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

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

    TopList