Форум: "Начинающим";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];
Внизnull или нуль? Найти похожие ветки
← →
_Ламер_ (2006-11-10 21:53) [0]Народ, здаров.
Есть таблица, в этой таблице есть поле (а как иначе))?). Это поле связано FK с полем из другой таблицы. Вопрос в чём. Если не надо ссылаться на вторую таблицу, то каким значением таблицу заполнять - null или нулём? Если второй случай, тогда его можно определить как not null (в моём случае не актуально - юзер доступа к этому полю не имеет). Но тогда во второй таблице придётся создавать запись со значением "0", причём до создания генератора.
Честно говоря не знаю, как поступить.
← →
Kolan © (2006-11-10 21:56) [1]Я в базах - <твой ник>, но ИМХО тут что-то нето. Как это ненадо ссылаться? Зачем тогда связь в таблицах? Зачем сохранять данные?
← →
unknown © (2006-11-10 22:08) [2]Зависит от задачи. Насколько я понял проблему - нет жесткой зависимости
таблиц, так что null предпочтительней.
← →
unknown © (2006-11-10 22:11) [3]
> Kolan © (10.11.06 21:56) [1]
> Зачем тогда связь в таблицах?
Не поверишь - есть такие случаи, когда допустимо оставлять поле
незаполненным, но при этом, в случае заполнения поля введенное значение должно соответствовать значению из другой таблицы. :-)
← →
_Ламер_ (2006-11-10 22:21) [4]Ну как Вам сказать. Первая таблица - это дерево папок. Если узел не папка, то это ссылка на вторую таблицу с конкретными значениями. Можно, конечно, их объединить, но тогда получится куча незаполненных полей в случае, если запись является папкой. Такие вот пироги.
← →
KilkennyCat © (2006-11-10 22:31) [5]у папки тоже есть конкретные значения, не меньше, чем у файла. Объединяешь и добавляешь поле флага, папка или файл.
← →
Petr V. Abramov © (2006-11-10 22:40) [6]> Если второй случай, тогда его можно определить как not null
второй случай не так плох, т.к. избавляет от outer join, который оптимизатору - серп по работе. В случае мелких справочиников в большом их количестве - пофиг почти
← →
_Ламер_ (2006-11-10 22:51) [7]Не, папка не физическая, а виртуальная. У неё, кроме как названия и атрибута, что она папка - ничего и нет.
Кстати, чем директория отличается от папки?
← →
Desdechado © (2006-11-10 22:54) [8]Я предпочитаю не делать внешних ключей с нуллами. Лучше уж завести запись по умолчанию в справочнике. Она не обязана иметь код 0, это может быть любое понятное значение. У меня обычно единица. Она же триггерами заблокирована от изменения и удаления.
А почему я не люблю ключи с null, так это потому, что NULL-значения не индексируются. И поэтому, когда тебе нужно будет найти (а это часто) Null"ы в поле, то придется писать проверку IS NULL, а она не использует индексы, т.е. приводит к полному перебору записей в таблице. А оно надо? Особенно, если таблицы не на 100 записей, а на 100 миллионов...
← →
_Ламер_ (2006-11-11 15:36) [9]Сэнкс
Целую
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.03;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c