Общие > Базы данных

REFERENCES с использованием varchar

(1/3) > >>

Nicki:
Господа.
Скажите пожалуйста, можно сделать связь между таблицами, через поля varchar?
Или можно только через числовые типы полей делать связи?

Т.е. примерно такая конструкция прокатит?

CREATE TABLE person (
    id varchar(10) NOT NULL,
    name char(60) NOT NULL,
    PRIMARY KEY (id)
);

CREATE TABLE shirt (
    id int NOT NULL AUTO_INCREMENT,
    style enum(\'t-shirt\', \'polo\', \'dress\') NOT NULL,
    color enum(\'red\', \'blue\', \'orange\', \'white\', \'black\') NOT NULL,
    owner varchar(10) NOT NULL REFERENCES person(id),
    PRIMARY KEY (id)
);

fidget:
если СУБД MySQL, то там references для MyISAM только парсится, но ничего не делает.

Nicki:
Да, MySQL. А как это понять "парсится"?

FreeSpace:

--- Цитировать ---Nicki:
Да, MySQL. А как это понять "парсится"?
--- Конец цитаты ---

Это значит, что ошибок не выдает.

Nicki:
Т.е. может принять значение, которого нет в "главной" таблице? Или не принимает не верного значения, но не выдает сообщение об ошибке?

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии