首页 > 解决方案 > 填写数据库

问题描述

假设我们有一个包含以下两个表的数据库:书籍和作者。

作者表有列:id、name。books 表有列:id、title、author_id(指 authors 表)。

我手动将新书添加到数据库中,但我想编写一个简单的 sql 脚本来自动执行此任务。我可以避免在作者表中按作者姓名查找 author_id(此步骤可以由数据库完成)吗?我想要的是输入书名和作者姓名(即我不想先查找 author_id),如下所示:

//script.sql
INSERT "A quick guide to SQL", "Philip Collins" 

标签: sql

解决方案


您可以创建一个视图:

create view v_books as
    select b.*, a.name
    from books b join
         authors a
         on b.author_id = a.id;

这是一个存储查询,可以像表一样使用。


推荐阅读