Бих казал, че първо и преди всичко:бъдете последователни.
Предполагам, че сте почти готови с конвенциите, които очертахте във вашия въпрос. Все пак няколко коментара:
Точки 1 и 2 са добри според мен.
Точка 3 - за съжаление това не винаги е възможно. Помислете как бихте се справили с една таблица foo_bar
който има колони foo_id
и another_foo_id
и двете препращат към foo
таблица foo_id
колона. Може да искате да помислите как да се справите с това. Това обаче е малко ъглов случай!
Точка 4 – Подобно на точка 3. Може да искате да въведете число в края на името на външния ключ, за да се погрижите за наличието на повече от една референтна колона.
Точка 5 - Бих избегнал това. Това ви осигурява малко и ще се превърне в главоболие, когато искате да добавите или премахнете колони от таблица на по-късна дата.
Някои други точки са:
Конвенции за именуване на индекси
Може да пожелаете да въведете конвенция за именуване на индекси - това ще бъде от голяма помощ за всяка работа с метаданни на база данни, която може да искате да извършите. Например може да искате просто да извикате индекс foo_bar_idx1
или foo_idx1
- зависи изцяло от вас, но си струва да се обмислите.
Имена на колони за единствено число срещу множествено число
Може да е добра идея да се обърнете към трънливия проблем за множествено число срещу единично в имената на колоните си, както и имената на вашата таблица. Тази тема често предизвиква големи дебати в DB общността. Бих се придържал към форми за единствено число както за имена на таблици, така и за колони. Там. Аз съм го казал.
Основното тук, разбира се, е последователността!