Вопросы с тегом «foreign-keys»

Внешние ключи - это функция целостности данных реляционных (и SQL) баз данных. Внешний ключ - это набор атрибутов в реляционной таблице, на который распространяется ограничение ссылочной целостности. Ограничение ссылочной целостности требует, чтобы значения атрибутов внешнего ключа в одной таблице A соответствовали соответствующим значениям в некоторой указанной таблице B (которая иногда может совпадать с таблицей A).

15
Когда и зачем использовать каскадирование в SQL Server?
При настройке внешних ключей в SQL Server, при каких обстоятельствах он должен каскадироваться при удалении или обновлении, и каковы причины этого? Это, вероятно, относится и к другим базам данных. Больше всего я ищу конкретные примеры каждого сценария, желательно от того, кто их успешно использовал.

6
Принудительно отбрасывать MySQL, обходя ограничение внешнего ключа
Я пытаюсь удалить все таблицы из базы данных, кроме одной, и я получаю следующую ошибку: Невозможно удалить или обновить родительскую строку: ограничение внешнего ключа не выполнено Конечно, я мог бы методом проб и ошибок увидеть, каковы эти ключевые ограничения, и в итоге удалить все таблицы, но я хотел бы знать, …

2
Рубин на рельсах. Как использовать метод Active Record .build в отношении: принадлежит к отношению?
Мне не удалось найти какую-либо документацию по методу .build в Rails (в настоящее время я использую 2.0.2). Путем экспериментов кажется, что вы можете использовать метод сборки для добавления записи в has_manyотношение до того, как какая- либо запись будет сохранена. Например: class Dog < ActiveRecord::Base has_many :tags belongs_to :person end class …

8
Как добавить внешний ключ в существующую таблицу SQLite?
У меня есть следующая таблица: CREATE TABLE child( id INTEGER PRIMARY KEY, parent_id INTEGER, description TEXT); Как добавить ограничение внешнего ключа parent_id? Предположим, что внешние ключи включены. В большинстве примеров предполагается, что вы создаете таблицу - я бы хотел добавить ограничение к существующей.
128 sql  sqlite  foreign-keys  ddl 

1
синтаксис внешнего ключа postgresql
У меня есть 2 таблицы, как вы увидите в моем коде posgresql ниже. В первой таблице student есть 2 столбца: один для student_name, а другой student_id, который является первичным ключом. Во второй моей таблице, называемой тестами, есть 4 столбца: один для subject_id, один для subject_name, а затем один для студента …

24
Действительно ли внешние ключи необходимы при проектировании базы данных?
Насколько мне известно, внешние ключи (FK) используются, чтобы помочь программисту правильно манипулировать данными. Предположим, что программист уже делает это правильно, тогда действительно ли нам нужна концепция внешних ключей? Есть ли другие способы использования внешних ключей? Я что-то упустил?

2
Django: установить внешний ключ с использованием целого числа?
Есть ли способ установить отношения внешнего ключа с использованием целочисленного идентификатора модели? Это было бы в целях оптимизации. Например, предположим, что у меня есть модель сотрудников: class Employee(models.Model): first_name = models.CharField(max_length=100) last_name = models.CharField(max_length=100) type = models.ForeignKey('EmployeeType') и EmployeeType(models.Model): type = models.CharField(max_length=100) Мне нужна гибкость наличия неограниченного количества типов сотрудников, …

13
Код ошибки: 1005. Невозможно создать таблицу «…» (номер ошибки: 150)
Я искал решение этой проблемы в Интернете и проверял вопросы о переполнении стека, но ни одно из решений не помогло в моем случае. Я хочу создать внешний ключ из таблицы sira_no в metal_kod. ALTER TABLE sira_no ADD CONSTRAINT METAL_KODU FOREIGN KEY(METAL_KODU) REFERENCES metal_kod(METAL_KODU) ON DELETE SET NULL ON UPDATE SET …

8
Можно ли использовать внешний ключ в качестве первичного ключа?
У меня две таблицы: Пользователь (логин, пароль) Профиль (profileId, пол, дата рождения, ...) В настоящее время я использую этот подход: каждая запись профиля имеет поле с именем «userId» в качестве внешнего ключа, которое ссылается на таблицу User. Когда пользователь регистрируется, его запись профиля создается автоматически. Меня смущает предложение моего друга: …

6
Как изменить ссылочное действие внешнего ключа? (поведение)
Я создал таблицу, содержащую столбец с внешним ключом, для которого установлено значение ON DELETE CASCADE(удалить дочерний элемент при удалении родителя) Какой должна быть команда SQL, чтобы это изменить ON DELETE RESTRICT? (нельзя удалить родителя, если у него есть дети)


20
MySQL Создание таблиц с внешними ключами с ошибкой: 150
Я пытаюсь создать таблицу в MySQL с двумя внешними ключами, которые ссылаются на первичные ключи в двух других таблицах, но я получаю ошибку errno: 150, и таблица не создается. Вот SQL для всех трех таблиц: CREATE TABLE role_groups ( `role_group_id` int(11) NOT NULL `AUTO_INCREMENT`, `name` varchar(20), `description` varchar(200), PRIMARY KEY …

8
Как создавать отношения в MySQL
В классе мы все «изучаем» базы данных, и все пользуются Access. Мне это надоело, и я пытаюсь делать то, что делает остальной класс, но с необработанными командами SQL с MySQL вместо использования Access. Мне удалось создать базы данных и таблицы, но как теперь установить связь между двумя таблицами? Если у …


5
SqlAlchemy - фильтрация по атрибуту отношения
У меня нет большого опыта работы с SQLAlchemy, и у меня есть проблема, которую я не могу решить. Я пробовал искать и пробовал много кода. Это мой класс (сокращенный до наиболее значимого кода): class Patient(Base): __tablename__ = 'patients' id = Column(Integer, primary_key=True, nullable=False) mother_id = Column(Integer, ForeignKey('patients.id'), index=True) mother = …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.