Странная ошибка в Access 2007 Constraint Clause - PullRequest
0 голосов
/ 09 февраля 2012
Relationship must be on the same number of fields with the same data types. (Error 3368)
The CONSTRAINT clause you are using to create a relationship includes a different number of fields for each table or includes fields with different data types. Check the number of fields in the CONSTRAINT clause, check the data types of fields to make sure they match, and try again.

Я никогда не сталкивался с этой проблемой раньше.У меня есть две таблицы, которые имеют одно отношение «один ко многим» между ними.Я обозначил свой собственный первичный ключ от одной таблицы к другой.Они оба имеют одинаковый тип данных (число).Почему должно иметь значение, если в одной таблице больше полей, чем в другой?Кажется, это происходит только тогда, когда я назначаю свой первичный ключ.Таблица 'many' проиндексирована (без дубликатов).И я попробовал обязательный и не обязательный для таблицы «один».Что дает?I отношения без ссылочной целостности разрешены, во что бы то ни стало.

1 Ответ

2 голосов
/ 10 февраля 2012

Десятичные числа и целые числа не считаются эквивалентными числовыми типами.Вы должны изменить CountryPK на Long Integer или CountryFK на Decimal.Вы также можете использовать Double на обоих.

...