Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2011.09.18;
Скачать: [xml.tar.bz2];

Вниз

Как дать правильное имя?   Найти похожие ветки 

 
Leon-Z ©   (2011-05-27 07:05) [0]

Когда пишу очередную БД всегда встает вопрос: "Как дать правильное
имя таблице?".

Например: таблица хранит продукты - Product или Products ? Каждая конкретная запись относится к одному продукту, но сама таблица
хранит множество. (Аналогично и с другими таблицами).

Собственно у кого какие соображения по этому поводу ?


 
Anatoly Podgoretsky ©   (2011-05-27 07:26) [1]

> Leon-Z  (27.05.2011 07:05:00)  [0]

Goods


 
Anatoly Podgoretsky ©   (2011-05-27 07:27) [2]

OtherTable


 
Дмитрий С ©   (2011-05-27 07:32) [3]

я в ед. числе указываю: Product

Потом логичнее получается
SELECT Product.Name FROM Product WHERE Product.id.....


 
Anatoly Podgoretsky ©   (2011-05-27 07:36) [4]

Goods имеет только одну форму.
И тогда не Product, а Production и OtherTable


 
Leon-Z ©   (2011-05-27 08:03) [5]


> Дмитрий С ©   (27.05.11 07:32) [3]

Да, действительно !!! :-))
Значиты Вы рекомендуете давать имена всегда в единственном числе ?

> Anatoly Podgoretsky ©   (27.05.11 07:36) [4]

Интересно :)
Т.е. Вы рекомендуете выбирать "особенные" названия ?
Но ведь не всегда возможно подобрать такое название как Goods.
Например таблица "Рецепты" - Recipie или Recipies ?


 
Ega23 ©   (2011-05-27 08:28) [6]


> Потом логичнее получается
> SELECT Product.Name FROM Product WHERE Product.id.....


Select P.Name from Products P where P.ID


 
OW ©   (2011-05-27 08:37) [7]


> Product


 
Anatoly Podgoretsky ©   (2011-05-27 08:44) [8]

> Leon-Z  (27.05.2011 08:03:05)  [5]

Recipie если всего один рецепт


 
Дмитрий С ©   (2011-05-27 10:13) [9]


> Ega23 ©   (27.05.11 08:28) [6]
>
> Select P.Name from Products P where P.ID


Ну или так можно
SELECT Product.Name FROM Products Product WHERE Product.id


 
Ega23 ©   (2011-05-27 10:45) [10]


> Ну или так можно
> SELECT Product.Name FROM Products Product WHERE Product.


Да как угодно можно.
А нужно так, как принято в команде. Если принято Table1 (Column1, coulumn2, ..., ColumnN), ..., TableN (....), то так и надо именовать.
Принято "s" в конце приписывать - прописывяй. Принято вообще по-русски таблицы именовать - именуй. Требуется к каждой таблице префикс или постфикс TBL добавлять - добавляй.


 
clickmaker ©   (2011-05-27 10:51) [11]

имя таблицы = имя соотв. сущности в бизнес-логике, в ед. числе


 
Leon-Z ©   (2011-05-27 19:00) [12]


> Ega23 ©   (27.05.11 10:45) [10]

А как Вы чаще всего делаете ?

> clickmaker ©   (27.05.11 10:51) [11]
> имя таблицы = имя соотв. сущности в бизнес-логике, в ед.
>  числе

Это из какого-то учебника или справочника ?


 
Ega23 ©   (2011-05-27 19:03) [13]


> А как Вы чаще всего делаете ?

А мне по-барабану. Надо - буду так делать, не надо - буду по-другому.


 
clickmaker ©   (2011-05-27 19:17) [14]

> Это из какого-то учебника или справочника ?

Когда строищь модель предметной области (хоть на бумажке с карандашиком, хоть в case-тулзе) начинаешь ведь с имен объектов (классов) этой самой предметной области, а не с имен таблиц/полей и переменных кода.
Ну и логическая модель потом преобразуется в физическую, т.е. в структуру БД.
Так проще соответствие устанавливать.
Н-р, "Заказ" -> сущность "Order" -> таблица "Order"


 
xayam ©   (2011-05-27 20:30) [15]


> Как дать правильное имя?


prefix_section_subsection

Например, dm_sale_products


 
Virgo_Style ©   (2011-05-27 20:37) [16]

Множественное. Как TMemo.Lines или TListBox.Items, так и тут.


 
clickmaker ©   (2011-05-27 22:58) [17]

а вообще все фигня. Главное, чтобы в коллективе, который над проектом работает, имело место взаимопонимание, а не каждый городил в меру своей фантазии.


 
TUser ©   (2011-05-27 23:07) [18]

Согласен с [3]. Таблица - это по сути, типа данных.


 
clickmaker ©   (2011-05-27 23:13) [19]

да и таблица из одной записи - это редкость. Поэтому использование мн. ч. как бы избыточно


 
Дмитрий Тимохов   (2011-05-27 23:29) [20]

извечная дилема )))

хорошо, а как назвать таблицу, отображающую цену продуктов (допустим такая есть).

GoodPrice, GoodsPrices, GoodPrices, GoodsPrice... какие мнения?


 
TUser ©   (2011-05-27 23:32) [21]

Table125 ))


 
clickmaker ©   (2011-05-27 23:42) [22]

GoodPrice - это таблица скидок )
а цена продуктов - ProductPrice


 
Игорь Шевченко ©   (2011-05-27 23:43) [23]


> хорошо, а как назвать таблицу, отображающую цену продуктов
> (допустим такая есть).


зависит от того, есть ли рядом таблица цен на непродукты


 
clickmaker ©   (2011-05-27 23:44) [24]

вообще, можно и Tseny_na_Producty. Главное, чтобы вся БД была в одном стиле выдержана )


 
Германн ©   (2011-05-28 02:52) [25]

Я бы назвал сию таблицу так:
Table_Of_Products_That_MyCompany_ IsNow_Saled
если бы был в бреду.


 
Anatoly Podgoretsky ©   (2011-05-28 06:53) [26]

> Дмитрий Тимохов  (27.05.2011 23:29:20)  [20]

Дмитрий единственного числа для Товаров не существует, GOOD это не
едиственное число, а слово "ХОРОШО"


 
Leon-Z ©   (2011-05-28 10:19) [27]


> clickmaker ©   (27.05.11 23:42) [22]
> ... а цена продуктов - ProductPrice

Да, вот хорошее замечание, насчет составных имен:

ProductPrice, ProductsPrice, ProductPrices, ProductsPrices ?????????????

Какая сущность должна быть в множественном числе ?
Или ни одна не должна быть в мн. числе ?
Или все сущности должны быть в мн. числе ?


 
DVM ©   (2011-05-28 10:32) [28]


> Leon-Z ©   (28.05.11 10:19) [27]


> ProductPrice, ProductsPrice, ProductPrices, ProductsPrices
> ?????????????

имхо с такими заморочками вы и через год не продвинетесь вперед с этим проектом. ProductPrice бери.


 
oldman ©   (2011-05-28 10:44) [29]

Иди по проторенному пути доморощенных программистов.

ZenaProductov


 
Leon-Z ©   (2011-05-28 10:46) [30]


> DVM ©   (28.05.11 10:32) [28]
> имхо с такими
> заморочками вы и через год не продвинетесь вперед с этим
> проектом. ProductPrice бери.

Спасибо.
ЗЫ. Проект еще не стартовал, только на стадии обсуждения,
ну и меня попросили подумать о реализации :)


 
Leon-Z ©   (2011-05-28 10:46) [31]


> DVM ©   (28.05.11 10:32) [28]
> имхо с такими
> заморочками вы и через год не продвинетесь вперед с этим
> проектом. ProductPrice бери.

Спасибо.
ЗЫ. Проект еще не стартовал, только на стадии обсуждения,
ну и меня попросили подумать о реализации :)


 
asail ©   (2011-05-28 11:23) [32]


> oldman ©   (28.05.11 10:44) [29]
> Иди по проторенному пути доморощенных программистов.
>
> ZenaProductov

У прдуктов есть жена? :)

Лично я, как правило, в единственном числе даю названия таблицам.
ITEM, PRICE, CAREGORY и т.д. Причем, если в БД существуют разные сущности, у которых есть цена, и их цены в разных таблицах, то названия сущностей добавляются в названия таблиц c ценами. Например, ITEM_PRICE, GRADE_PRICE...

З.Ы. Имхо, "правильного" способа не существует...


 
Inovet ©   (2011-05-28 11:57) [33]

> [32] asail ©   (28.05.11 11:23)
> > ZenaProductov
>
> У прдуктов есть жена? :)

Zena - это Zion замаскированный.


 
_Юрий   (2011-05-28 12:16) [34]


> TUser ©   (27.05.11 23:07) [18]
>
> Согласен с [3]. Таблица - это по сути, типа данных.


не согласен.
Когда мы создаем ее - (createtable), мы описываем тип
а когда делаем выборку или вставку данных - работаем уже с экземпляром. Таблица - это по сути синглтон - один тип, один экземпляр. И дело обстоит именно так далеко не во всех СУБД. Что иной раз весьма удобно.


 
Очень злой   (2011-05-28 13:30) [35]


> Игорь Шевченко ©   (27.05.11 23:43) [23]
>
>
> > хорошо, а как назвать таблицу, отображающую цену продуктов
> > (допустим такая есть).
>
>
> зависит от того, есть ли рядом таблица цен на непродукты


Сильно...
Но как быть в случае, если еще неизвестно будет ли таблица на непродукты?


 
Anatoly Podgoretsky ©   (2011-05-28 13:47) [36]

> Очень злой  (28.05.2011 13:30:35)  [35]

Тогда считай, что будет.


 
Игорь Шевченко ©   (2011-05-28 18:46) [37]

Очень злой   (28.05.11 13:30) [35]

Ты проектировщик или где ?

Если ты заранее ничего не знаешь, то самый хороший способ - это Table1, Table2, Table3, далее везде до станции Можайск Смоленского направления.

Достоинство - в неограниченной возможности добавления таблиц самого произвольного содержания.


 
Плохиш ©   (2011-05-29 03:33) [38]

Таблицы нужно называть в единственном числе, ибо linq даëт им алиасы во множественном.


 
Ega23 ©   (2011-05-29 10:11) [39]


> Zena - это Zion замаскированный.


Zena - это Королева военов. Этакая симпотная тёлка в бронеливчике с мечом.


 
ов (дом)   (2011-05-29 23:44) [40]


> как назвать таблицу, отображающую цену продуктов (допустим
> такая есть).



> Price


 
ов (дом)   (2011-05-30 00:02) [41]

продукты, цены..не с того начинаешь
главное - документ.
На основании документа продукт попадает на склад, на основании его же он от туда уходит. На основании документа он уценивается/списывается и тд и тп
Документ выражает от кого и что пришло/ ушло. т.е. ссылки на агентов/контрагентов и прочую лабуду в виде поставщиков/подрядчиков :)

Документ!

ну и далее
все документы делятся на разные виды, от одних продуктов становится больше, от других меньше, от третьих меняется цена, от четвертых .. т.е. документы классифицируются по операциям.
Операция.
Одним документом могут быть затронут как один товар, так и много, или ни одного. т.е. Строки документов, или Журнал.
А вот тут уже только товары..



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2011.09.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.004 c
2-1307003087
DagOT-R
2011-06-02 12:24
2011.09.18
Ошибки переменных


2-1306835974
.dzmitry
2011-05-31 13:59
2011.09.18
use MODI Library


15-1306320156
clickmaker
2011-05-25 14:42
2011.09.18
Как в ICQ 7.5 отключить открытие по Ctrl+Shift+I


2-1306920985
R_R
2011-06-01 13:36
2011.09.18
Печать в QuickRep


15-1306614600
Юрий
2011-05-29 00:30
2011.09.18
С днем рождения ! 29 мая 2011 воскресенье





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский