powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Справочная таблица для разных языков интерфейса
6 сообщений из 6, страница 1 из 1
Справочная таблица для разных языков интерфейса
    #36754817
Idaxebrn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем добрый день!

Нужно сделать таблицу, в которой храняться группы товаров PROD_GROUP. Есть таблица товаров PRODUCT, которая имеет FK на таблицу PROD_GROUP. Интерфейс системы на выбор русский или английский, поэтому таблица хранит названия групп на обоих языках

Есть две идеи, так:

ID_GROUP | NAME_GROUP | CULTURE
------------------------------------
1 | Одежда |rus
2 | Обувь |rus
3 | Аксесуары |rus
4 | Clothes |eng
5 | Shoes |eng
6 | Accessories |eng

Или вот так:

ID_GROUP | NAME_RUS | NAME_ENG
------------------------------------
1 | Одежда | Clothes
2 | Обувь | Shoes
3 | Аксесуары | Accessories

Подскажите, какой вариант лучше?
Спасибо.
...
Рейтинг: 0 / 0
Справочная таблица для разных языков интерфейса
    #36754834
Фотография Dinamo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrn,
1-ый, "завтра" могут понадобится другие языки.
Дополнительно, языки сделать отдельной таблицей. В таблице описаний ссылку на ид языка.
...
Рейтинг: 0 / 0
Справочная таблица для разных языков интерфейса
    #36755379
rmka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В первом варианте тебе надо сопоставить одиниковые группы. т.е. в отдельную таблицу сущность "группы", в другую таблицу названия групп с сылками на справочник групп и на справочник языков , который также хранится в отдельной таблице. т.е. 3 таблицы. справочник групп, справочник языков, и таблица многие - многие с сылками на группы и на языки.
...
Рейтинг: 0 / 0
Справочная таблица для разных языков интерфейса
    #36766692
Фотография Cheerful Calf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если языков намечается менее 5-7 - однозначно первый вариант.
...
Рейтинг: 0 / 0
Справочная таблица для разных языков интерфейса
    #36766719
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idaxebrnтак:

ID_GROUP | NAME_GROUP | CULTURE
------------------------------------
1 | Одежда |rus
2 | Обувь |rus
3 | Аксесуары |rus
4 | Clothes |eng
5 | Shoes |eng
6 | Accessories |eng

Подскажите, какой вариант лучше?

Какой-то ущербный вариант получается... Почему например Аксесуары и Accessories имеют разный ID_GROUP?
Ведь это одна группа, только названия на разных языках.

Значение CULTURE вынести в другую табличку, а тут оставить только ссылку на ИД/код языка...
...
Рейтинг: 0 / 0
Справочная таблица для разных языков интерфейса
    #36766770
Фотография Cheerful Calf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Надо так, только так не надо....
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
CREATE TABLE Groups(
	ID_GROUP INT NOT NULL
	CONSTRAINT PK_Groups PRIMARY KEY(ID_GROUP))

CREATE TABLE Cultures(
	CultureID INT NOT NULL,
	CultureName CHAR( 5 ) NULL,
	CONSTRAINT PK_Cultures PRIMARY KEY(CultureID))
 
CREATE TABLE UI_Names(
	ID INT NOT NULL,
	CultureID INT NOT NULL,
	UI_Name NVARCHAR( 512 ) NOT NULL,
	CONSTRAINT PK_UI_Names PRIMARY KEY(ID, CultureID),
	CONSTRAINT FK_UI_Names_Cultures FOREIGN KEY(CultureID) REFERENCES Cultures(CultureID),
	CONSTRAINT FK_UI_Names_Groups FOREIGN KEY(ID) REFERENCES Groups(ID_GROUP))
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Справочная таблица для разных языков интерфейса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]