• 记开发个人图书收藏清单小程序开发(三)DB设计


    主要是参考豆瓣的图书查询接口:

    https://api.douban.com/v2/book/isbn/:9780132350884

    返回内容如下:

     1 {
     2     "rating": {
     3         "max": 10, 
     4         "numRaters": 361, 
     5         "average": "8.8", 
     6         "min": 0
     7     }, 
     8     "subtitle": "A Handbook of Agile Software Craftsmanship", 
     9     "author": [
    10         "Robert C. Martin"
    11     ], 
    12     "pubdate": "2008-8-11", 
    13     "tags": [
    14         {
    15             "count": 295, 
    16             "name": "编程", 
    17             "title": "编程"
    18         }, 
    19         {
    20             "count": 257, 
    21             "name": "programming", 
    22             "title": "programming"
    23         }, 
    24         {
    25             "count": 150, 
    26             "name": "软件开发", 
    27             "title": "软件开发"
    28         }, 
    29         {
    30             "count": 109, 
    31             "name": "程序设计", 
    32             "title": "程序设计"
    33         }, 
    34         {
    35             "count": 100, 
    36             "name": "计算机", 
    37             "title": "计算机"
    38         }, 
    39         {
    40             "count": 87, 
    41             "name": "软件工程", 
    42             "title": "软件工程"
    43         }, 
    44         {
    45             "count": 66, 
    46             "name": "敏捷开发", 
    47             "title": "敏捷开发"
    48         }, 
    49         {
    50             "count": 55, 
    51             "name": "agile", 
    52             "title": "agile"
    53         }
    54     ], 
    55     "origin_title": "", 
    56     "image": "https://img3.doubanio.com/view/subject/m/public/s29624974.jpg", 
    57     "binding": "Paperback", 
    58     "translator": [ ], 
    59     "catalog": "", 
    60     "pages": "464", 
    61     "images": {
    62         "small": "https://img3.doubanio.com/view/subject/s/public/s29624974.jpg", 
    63         "large": "https://img3.doubanio.com/view/subject/l/public/s29624974.jpg", 
    64         "medium": "https://img3.doubanio.com/view/subject/m/public/s29624974.jpg"
    65     }, 
    66     "alt": "https://book.douban.com/subject/3032825/", 
    67     "id": "3032825", 
    68     "publisher": "Prentice Hall", 
    69     "isbn10": "0132350882", 
    70     "isbn13": "9780132350884", 
    71     "title": "Clean Code", 
    72     "url": "https://api.douban.com/v2/book/3032825", 
    73     "alt_title": "", 
    74     "author_intro": "Robert C. “Uncle Bob” Martin has been a software professional since 1970 and an international software consultant since 1990. He is founder and president of Object Mentor, Inc., a team of experienced consultants who mentor their clients worldwide in the fields of C++, Java, C#, Ruby, OO, Design Patterns, UML, Agile Methodologies, and eXtreme programming.", 
    75     "summary": "Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.
    76 Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code “on the fly” into a book that will instill within you the values of a software craftsman and make you a better programmer—but only if you work at it.
    77 What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.
    78 Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.
    79 Readers will come away from this book understanding
    80 How to tell the difference between good and bad code
    81 How to write good code and how to transform bad code into good code
    82 How to create good names, good functions, good objects, and good classes
    83 How to format code for maximum readability
    84 How to implement complete error handling without obscuring code logic
    85 How to unit test and practice test-driven development
    86 This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.", 
    87     "price": "USD 49.99"
    88 }
    豆瓣图书查询返回内容

    刚才出去拿纱窗了,等晚上设计DB的时候继续更新。

    基于豆瓣API获取的Response信息,所以抽取如下信息:

    豆瓣图书API信息
    字段名称 豆瓣字段 字段描述
    Title title  
    SubTitle subtitle  
    Authors author  
    Translator translator  
    ISBN13 isbn13  
    ISBN10 isbn10  
    AuthorIntro author_intro  
    Summary summary  
    Publisher publisher  
    Binding binding  
    OriginTitle origin_title  
    Pages pages  
    ImageUrl image  
    Pubdate pubdate  
    Catalog catalog  
    Tags tags  

    拆分如上字段出来。

     ......

    因为在看世界杯,所以设计有点断断续续的,放出DB的Diagram:

    当前的逻辑应该是没有问题了,现在需要丰富的是DB的内容,以及每条线的发展设计。

    顺便放出几个Type的Script:

    1 CREATE FUNCTION [core].[Matter#Type] ()
    2 RETURNS TABLE
    3 WITH SCHEMABINDING, ENCRYPTION
    4 AS RETURN
    5 (
    6     select    1        as        _Book
    7     ,         2        as        _ShelfBook
    8     ,         4        as        _BookList
    9 )
     1 CREATE FUNCTION [core].[Party#Type] ()
     2 RETURNS TABLE
     3 WITH SCHEMABINDING, ENCRYPTION
     4 AS RETURN
     5 (
     6     select    1        as        _Administrator
     7     ,         4        as        _User
     8     ---------------------------------------
     9     ,        16        as        _Shelf
    10 )
    1 CREATE FUNCTION [base].[BookInfo#Type] ()
    2 RETURNS TABLE
    3 WITH SCHEMABINDING, ENCRYPTION
    4 AS RETURN
    5 (
    6     select    1        as        _Summary
    7     ,         2        as        _Catalog
    8     ,         4        as        _AuthorIntro
    9 )

    好的,今天就先到这吧。

  • 相关阅读:
    express如何使用cors插件、body-parser插件
    如何让xshell关闭后依然运行node项目
    nuxt命令和部署
    Python—函数的名称空间
    Python—生成器
    Python—闭包
    Python入门-字符串常用方法
    Python入门-函数
    Python入门-文件操作
    Python入门-三级菜单
  • 原文地址:https://www.cnblogs.com/bu-dong/p/9221290.html
Copyright © 2020-2023  润新知