Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- In [1]: import sqlite3
- In [2]: conn = sqlite3.connect('sweigartcats.db', isolation_level=None)
- In [3]: conn.execute('PRAGMA foreign_keys = ON')
- Out[3]: <sqlite3.Cursor at 0x13faddb6c40>
- In [4]: conn.execute('CREATE TABLE IF NOT EXISTS vaccinations (vaccine TEXT,
- ...: date_administered TEXT, administered_by TEXT, cat_id INTEGER,
- ...: FOREIGN KEY(cat_id) REFERENCES cats(rowid)) STRICT')
- Cell In[4], line 1
- conn.execute('CREATE TABLE IF NOT EXISTS vaccinations (vaccine TEXT,
- ^
- SyntaxError: unterminated string literal (detected at line 1)
- In [5]: conn.execute('CREATE TABLE IF NOT EXISTS vaccinations (vaccine TEXT, date_administered TEXT, administered_by TEXT, cat_id INTEGER, FOREIGN KEY(cat_id) REFERENCES cats(rowid)) STRICT')
- Out[5]: <sqlite3.Cursor at 0x13faddb7b40>
- In [6]: conn.execute('INSERT INTO vaccinations VALUES ("rabies", "2023-06-06", "Dr. Echo", 1)')
- ---------------------------------------------------------------------------
- OperationalError Traceback (most recent call last)
- Cell In[6], line 1
- ----> 1 conn.execute('INSERT INTO vaccinations VALUES ("rabies", "2023-06-06", "Dr. Echo", 1)')
- OperationalError: foreign key mismatch - "vaccinations" referencing "cats"
- In [7]: print(conn.execute("SELECT sql FROM sqlite_master WHERE type='table' AND name='cats'").fetchone()[0])
- CREATE TABLE cats (name TEXT NOT NULL, birthdate TEXT, fur TEXT, weight_kg REAL) STRICT
- In [8]:
Advertisement
Add Comment
Please, Sign In to add comment