KKeyTillage
Робоче середовище з ШІ для коду

Контроль зовнішніх ключів SQLite

Увімкніть зовнішні ключі SQLite поза транзакцією та повідомте про наявні порушення.

● ● ●KeyTillage●
Сценарії · Контроль зовнішніх ключів SQLite ×
import sqlite3

def enable_foreign_keys(db):
    if not isinstance(db, sqlite3.Connection) or db.in_transaction:
        raise ValueError("foreign_keys.connection")
    db.execute("PRAGMA foreign_keys = ON")
    if db.execute("PRAGMA foreign_keys").fetchone() != (1,):
        raise RuntimeError("foreign_keys.unavailable")
    return db.execute("PRAGMA foreign_key_check").fetchall()
✳Контроль зовнішніх ключів SQLite
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
  1. Моделі

    Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.

  2. Проєкт

    Перевірте відмову неправильної вставки й старий осиротілий запис, поверніть аудит без виправлення даних.

  3. Перевірте перед застосуванням

    Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.

Сценарії

Контроль зовнішніх ключів SQLite

Сценарії ↗
Сценарії
import sqlite3

def enable_foreign_keys(db):
    if not isinstance(db, sqlite3.Connection) or db.in_transaction:
        raise ValueError("foreign_keys.connection")
    db.execute("PRAGMA foreign_keys = ON")
    if db.execute("PRAGMA foreign_keys").fetchone() != (1,):
        raise RuntimeError("foreign_keys.unavailable")
    return db.execute("PRAGMA foreign_key_check").fetchall()
Робоче середовище з ШІ для коду

Перевірте налаштування бази даних перед зміною збережених даних

KeyTillage переносить код налаштування бази даних в обговорення програмування з ШІ у Windows, засноване на файлах проєкту. Спочатку визначте, де створюються з’єднання та що застосунок щодо них припускає. Попросіть підключеного асистента перевірити цей життєвий цикл перед пропозицією зміни параметра, щоб огляд враховував і час запуску коду, і його зміст.

Увімкнення контролю зовнішніх ключів SQLite — одне з корисних завдань проєкту. Обговоріть стан транзакції з’єднання та спосіб перевірки параметра кодом, а потім відокремте налаштування від звітування про вже наявні порушення в базі. Пропозиція має пояснювати обидві дії без припущення, що ввімкнення правила також виправляє старі записи. Будь-яке рішення щодо виправлення даних залишайте окремим від редагування конфігурації.

Перевірте патч і протестуйте його на тимчасових тестових даних із наявним записом без відповідного батьківського та спробою некоректного вставлення. Перевірте рядки звіту аудиту й відхилення у власному середовищі бази даних. KeyTillage підтримує сумісні з OpenAI або Anthropic кінцеві точки з обліковими даними за потреби. Можна вибрати модель без обмежень, якщо вона доступна, з урахуванням правил постачальника, інструментів сервера та меж контексту. Варто прагнути зрозумілого коду з’єднання, поведінку якого ви спостерігали перед застосуванням до реального застосунку.

Питання перед прийняттям патча з’єднання

Чи виправляє ввімкнення контролю наявні записи без батьківських?

Не припускайте цього. Ілюстративне завдання вмикає параметр з’єднання й повідомляє про наявні порушення. Перевіряйте запропоноване виправлення даних як окрему операцію з явними очікуваними змінами, не дозволяючи їй непомітно потрапити до патча налаштування.

Чому стан транзакції важливий для цього завдання?

Наявний контракт вимагає ввімкнення параметра поза активною транзакцією. Попросіть асистента перевірити, коли з’єднання переходить у цей стан, і перевірте підсумковий параметр замість припущення, що виконання команди гарантує задуману поведінку.

Що має містити тестова база даних?

Використайте невелику тимчасову базу з коректними зв’язками, відомим записом без батьківського та записуванням, яке контроль має відхилити. Перевірте і звіт аудиту, і поведінку вставлення, зберігаючи тестові дані незалежними від виробничих.

Чи можна надіслати моделі виробничу базу даних?

Віддавайте перевагу схемі й очищеним тестовим даним, що містять лише потрібне для завдання. Перед передаванням матеріалів перевірте налаштовану кінцеву точку й місця призначення інструментів. Локальній моделі потрібен власний запущений сервер, і це не робить усі підключені інструменти локальними.

Завантажити для Windows ↗

KeyTillage · Оновлено 2026-10-25