![]() |
|
Модераторы: skyboy |
![]()
|
|
| Irokez |
|
||||
![]() индеец ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 5 Всего: 53 |
версия mysql - 4.0.18-nt, ось - XP
делаю так:
получаю:
пробовал в разных таблицах и базах, результат один и тот же - почему-то не получается создать два поля типа timestamp у которых значение по умолчанию будет NULL, первое поле будет иметь NULL, а второе - нули ... кто-нибудь с таким сталкивался? или я на работе переработал сегодня... |
||||
|
|||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Irokez ты не переработал... дело в том, что mySQL версии 4.0.ХХ выставляет в таблице первому полю timestamp автоматическое значение не NULL а CURRENT_TIMESTAMP или NOW()... А всем остальным полям в таблице такого же типа значение по умолчанию - 00000000000000...
я побороть это также не смог... -------------------- ![]() |
|||
|
||||
| Irokez |
|
|||
![]() индеец ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: 5 Всего: 53 |
Kesh спасибо, буду знать
|
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Да не за что... сам долго парился...
-------------------- ![]() |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 8 Всего: 261 |
Вообще это логично не давать всем возможность NULL'а по дефолту. Ведь COUNT в таком случае (ну теоретически может такая ситуация получиться) никогда не вернет истинное кол-во строк в таблице..
|
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Mal Hack Почему?
-------------------- ![]() |
|||
|
||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 8 Всего: 261 |
Kesh COUNT не считает строки с NULL.
|
|||
|
||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Подожди! откуда ты это взял????? И что ты позразумеваешь под "строки с NULL"? |
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
GoodBoy Вот и я как-то удивился...
-------------------- ![]() |
|||
|
||||
| Mal Hack |
|
||||||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 8 Всего: 261 |
Спецификация.
Те строки, которые имеют значение NULL, т.е. пусты, но в них нет пустого значения. Вот пример:
Запрос:
Результат - 0. |
||||||||
|
|||||||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Прикольно!!!! Ни разу с таким не сталкивался.. :-)))))
|
|||
|
||||
| Kesh |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Mal Hack Это ты по-моему глупость написал...
Это не вставка... такой запрос ничего не добавляет к таблице... Поэтому и select выбирает у тебя 0 записей... Добавлено @ 19:42 Если у тебя два поля... поле1 и поле2. поле1 - заполнено, а поле2 - null... то выборка
все равно вернет количество записей... Добавлено @ 19:47 Пардон... запрос
-------------------- ![]() |
||||||
|
|||||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 8 Всего: 261 |
Kesh дополни мой пример стоблцом 54757 с дефолтным значением 0 тип INT. и снова выполни мой запрос. Результат по прежнему - 0.
Почему же не добавляет? Поставь в мой пример ID праймари кей ауто инкренент... |
|||
|
||||
| Kesh |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Эксперт Сообщений: 2488 Регистрация: 31.7.2002 Где: Германия, Saarbrü cken Репутация: 15 Всего: 54 |
Все равно выбирает... Да и мане по мускулу ничего не сказано про такие чудо, как пропуск строк со значением NULL...
Так что, пока не приведешь спецификацию, где ты это вычитал - считаю это бредом... P.S. Только без обид... -------------------- ![]() |
|||
|
||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 8 Всего: 261 |
Стоп. Выбирать SELECT * FROM он будет. Но при COUNT не будет учитываться та строка значение поля (которое каунтим) которой - NULL...
препод сказал |
||||
|
|||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |