0

我用 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使用“DB Browser”的单元格中。我不确定其中是否有需要修改的设置,因为我什至无法编辑单元格以将行插入其中。我收到以下错误:

添加记录时出错:FOREIGN KEY 约束失败 (INSERT INTO Issue( id, name, issue_number, publication_date, artist_id, series_id) VALUES (1,'',0,'',0,0);)

这基本上说当我尝试创建新记录时,表格单元格中没有存储任何信息。

4

0 回答 0