Ограничение FOREIGN KEY не удалось выполнить в CLI, но не с скриптом Python? [Дубликат]

Исправить исключение NullReferenceException можно с помощью Null-условных операторов в c # 6 и написать меньше кода для обработки нулевых проверок.

Он используется для проверки нуля до выполнения доступа к члену (?. ) или index (? [).

Пример

  var name = p?.Spouse?.FirstName;

эквивалентен:

    if (p != null)
    {
        if (p.Spouse != null)
        {
            name = p.Spouse.FirstName;
        }
    }

В результате имя будет нулевым когда p равно null или когда p.Spouse имеет значение null.

В противном случае имени переменной будет присвоено значение p.Spouse.FirstName.

Для получения дополнительной информации: Операторы с нулевым условием

8
задан kravitz 18 December 2010 в 09:17
поделиться

2 ответа

Внешние ключи SQLite отключены для обеспечения совместимости. Вам нужно включить их вручную сразу после каждого подключения к базе данных.

con.execute("PRAGMA foreign_keys = ON")

9
ответ дан Rosh Oxymoron 25 August 2018 в 06:45
поделиться

В этом вопросе лучше ответить Thibault J : Включить проверку целостности с помощью sqlite в django , который гласит:

from django.db.backends.signals import connection_created
def activate_foreign_keys(sender, connection, **kwargs):
    """Enable integrity constraint with sqlite."""
    if connection.vendor == 'sqlite':
        cursor = connection.cursor()
        cursor.execute('PRAGMA foreign_keys = ON;')

connection_created.connect(activate_foreign_keys)
2
ответ дан Community 25 August 2018 в 06:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: