Предположим, у меня есть две таблицы в отношениях родитель-ребенок. Назовем их «сайтами» и «зданиями», где «сайт» является родителем одного или нескольких «зданий». Я хочу, чтобы идентификаторы были уникальными для разных баз данных, поэтому я буду использовать идентификаторы GUID для идентификаторов.Должен ли я использовать общие имена или строго типизированные имена для первичных ключей и внешних ключей в базе данных?
Должен ли я использовать общие имена для полей идентификатора в таблицах или строго типизированные имена и почему?
Пример 1 (родовые имена):
CREATE TABLE sites (
id VARCHAR(38) NOT NULL,
-- other attributes
);
CREATE TABLE buildings (
id VARCHAR(38) NOT NULL,
parent_id VARCHAR(38) NOT NULL,
-- other attributes
);
Пример 2 (строго типизированных Имена):
CREATE TABLE sites (
site_guid VARCHAR(38) NOT NULL,
-- other attributes
);
CREATE TABLE buildings (
building_guid VARCHAR(38) NOT NULL,
site_guid VARCHAR(38) NOT NULL,
-- other attributes
);
Интересно. Я не знал об этом синтаксисе ANSI. Благодарю. –
@Tony: Я пытаюсь выяснить, что в настоящее время поддерживает этот синтаксис. У вас есть какие-либо ссылки, которые вы могли бы направить мне, чтобы определить это и, возможно, дать ему имя, которое я могу найти? –
См. Http://en.wikipedia.org/wiki/Join_(SQL), в котором говорится: «Предложение USING поддерживается MySQL, Oracle, PostgreSQL и SQLite». –