Я создал следующие таблицы с помощью JS:
const sqlite3 = require('sqlite3');
const db = new sqlite3.Database('./database.sqlite');
db.serialize(function() {
db.run('CREATE TABLE IF NOT EXISTS `Artist` ( ' +
'`id` INTEGER NOT NULL, ' +
'`name` TEXT NOT NULL, ' +
'`date_of_birth` TEXT NOT NULL, ' +
'`biography` TEXT NOT NULL, ' +
'`is_currently_employed` INTEGER NOT NULL DEFAULT 1, ' +
'PRIMARY KEY(`id`) )');
db.run('CREATE TABLE IF NOT EXISTS `Series` ( ' +
'`id` INTEGER NOT NULL, ' +
'`name` TEXT NOT NULL, ' +
'`description` TEXT NOT NULL, ' +
'PRIMARY KEY(`id`) )');
db.run('CREATE TABLE IF NOT EXISTS `Issue` ( ' +
'`id` INTEGER NOT NULL, ' +
'`name` TEXT NOT NULL, ' +
'`issue_number` INTEGER NOT NULL, ' +
'`publication_date` TEXT NOT NULL, ' +
'`artist_id` INTEGER NOT NULL, ' +
'`series_id` INTEGER NOT NULL, ' +
'PRIMARY KEY(`id`), ' +
'FOREIGN KEY(`artist_id`) REFERENCES `Artist`(`id`), ' +
'FOREIGN KEY(`series_id`) REFERENCES `Series`(`id`) )');
});
Artist
и Series
таблицы работают нормально, и я могу обновить их и вставить в них строки, но не могуПохоже, что для ввода Issues
в ячейки вводятся какие-либо данные с помощью «Браузер БД».Я не уверен, есть ли в нем какие-то настройки, которые мне нужно изменить, потому что я даже не могу редактировать ячейки, чтобы вставить в них строки.Я получаю следующую ошибку:
Ошибка добавления записи: сбой ограничения FOREIGN KEY (INSERT INTO Issue
(id
, name
, issue_number
, publication_date
, artist_id
,series_id
) VALUES (1, '', 0, '', 0,0);)
Что говорит о том, что в ячейках таблицы не было информации, когда я пытался создать новыйзапись.