Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Не могу найти логический тип данных

52K
10 ноября 2009 года
Tycoon
3 / / 28.10.2009
Хочу попробовать сделать простенькую карзину для интернет-магазина через MySQL. Примерно набрасал в access что хочу (пример показан на рисунке), начал создавать поля на хостинге и не нашёл в перечне логический тип данных с помощью которого в accesse ставились галочки на товар который необходимо перенести в корзину. Как быть? Через какой тип данных можно вставить отметки в виде галочек?
13
10 ноября 2009 года
RussianSpy
3.0K / / 04.07.2006
В "прекрасной" СУБД MySQL его (типа данных boolean) и не было (кроме самых последних версий). Для лучшей переносимости используйте либо tinyint либо ENUM. Но на мой взгляд tinyint все же удобнее
6
10 ноября 2009 года
George
4.1K / / 05.01.2007
кстати я заметил, почему то некоторые разработчики СУБД пренебрегают данным типом, а зря. в MySQL и Firebird это типа точно нету. Насчет MS не помню. В постгресе есть - только что проверил. TinyInt(1) и аналоги приходится использовать, хотя если туда попадет N>1 могут быть глюки.
1
10 ноября 2009 года
kot_
7.3K / / 20.01.2000
кстати в чем смысл этого типа данных - для меня ИМХО например загадка
6
10 ноября 2009 года
George
4.1K / / 05.01.2007
что, хочешь сказать, булево никогда не используешь? или считаешь, что нет смысла хранить его в БД?
5
10 ноября 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: kot_
кстати в чем смысл этого типа данных - для меня ИМХО например загадка


В MSSQL это - bit, в .NET он совершенно однозначно отображается в тип System.Boolean. Его фишка в том, что при наличии в таблице нескольких таких полей, они пакуются в одно 32-хразрядное целое число, и СУБД сама разруливает сохранение/востановление отдельных битов в этой форме.

З.Ы. Ну и концептуальная целостность - что у меня в домене предметной области булево, то и в хранилище - булево. Не парят всякие преобразования.

14
11 ноября 2009 года
Phodopus
3.3K / / 19.06.2008
Вопрос человека далекого от баз данных так что даже страшно :) :
а как обстоят дела с логическими операциями над булевыми (да пожалуй и численными) типами в SQL различных субд. NOT XOR OR AND там всякие.. Как то давно был интерес прояснить.
13
11 ноября 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: kot_
кстати в чем смысл этого типа данных - для меня ИМХО например загадка



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

13
11 ноября 2009 года
RussianSpy
3.0K / / 04.07.2006
Цитата: Phodopus
Вопрос человека далекого от баз данных так что даже страшно :) :
а как обстоят дела с логическими операциями над булевыми (да пожалуй и численными) типами в SQL различных субд. NOT XOR OR AND там всякие.. Как то давно был интерес прояснить.



Все есть.

53K
12 ноября 2009 года
plenlytep
10 / / 29.10.2009
SqlServer позволяет создавать файлы баз данных mdf вроде и просто базы данных на сервере. Есть ли какая нибудь разница?


В первом случае я могу использовать эти базы данных без коннекта к серверу. Это удобнее, на мой взгляд.
Понятно, что, и во втором случае создаются файлы, но мне необходимо коннектица к серверу, чтобы получить доступ.
14
12 ноября 2009 года
Phodopus
3.3K / / 19.06.2008
Вчера замутил с постгрес (Washington-у привет :) ). Выяснил что тип Boolean там есть, но внутренне он представляется аж целым байтом. И может быть NULL. Кстати операцию xor над буленом у меня так не получилось осуществить (and, or - на ура). Но может тупил, т.к. в доке она вроде описана. А вот на битах и битстрингах - вполне. Кстати битстринги пакуются в байты но к ним добавляется еще от 5 до 8 байт информации.. Нафига?..

ПыСы. Убейте БОТа!
8.2K
23 ноября 2009 года
Ora-cool
211 / / 20.09.2007
Цитата: Phodopus
Вчера замутил с постгрес (Washington-у привет :) ). Выяснил что тип Boolean там есть, но внутренне он представляется аж целым байтом. И может быть NULL. Кстати операцию xor над буленом у меня так не получилось осуществить (and, or - на ура). Но может тупил, т.к. в доке она вроде описана. А вот на битах и битстрингах - вполне. Кстати битстринги пакуются в байты но к ним добавляется еще от 5 до 8 байт информации.. Нафига?..

ПыСы. Убейте БОТа!



Вы, по-моему, путаете логические операции, такие как AND, NOT, OR, которые выполняются над булевыми типами и возвращают булевый результат и побитовые операции AND, OR, NOT, XOR, которые выполняются над числами (2-ичными).

14
23 ноября 2009 года
Phodopus
3.3K / / 19.06.2008
Цитата: Ora-cool
Вы, по-моему, путаете логические операции, такие как AND, NOT, OR, которые выполняются над булевыми типами и возвращают булевый результат и побитовые операции AND, OR, NOT, XOR, которые выполняются над числами (2-ичными).


Нет, не путаю. Просто хотелось бы видеть множество логических операций AND NOT OR XOR определенное над максимальным числом типов данных - как BOOLEAN, BIT и BITSTRING (postgres). Совсем здорово было бы если есть возможность побитово работать и с INTEGER (VAR)CHAR и т.п. Прямо в запросах SELECT естественно.

8.2K
23 ноября 2009 года
Ora-cool
211 / / 20.09.2007
Я что-то не припомню, чтобы хоть где-то встречал XOR именно в качестве логической операции, как-то везде стандартный набор из NOT, AND, OR. Необходимость условия if (a=1) or (a=2) понятна, а условия if (a=1) xor (a=2) как-то смутно понятна :)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог