数据存储方案

  • 考虑网站数据的特点

    • 数据量很大内存条成本高

    • 数据需要被持久化保存

    • 数据被操作的频率不是很高

  • 数据存储于关系型硬盘数据库Mysql

    • SQL语句的基本操作

    • user表的设计 ( 密码可进行加密处理 )

      column datatype pk主键 nn不为空 ai自动增加 Default
      id int Y Y Y
      username varchar(20) Y
      password varchar(20) Y
      realname varchar(10) Y
    • blogs表的设计

      column datatype pk主键 nn不为空 ai自动增加 Default
      id int Y Y Y
      title varchar(50) Y
      content longtext Y
      createtime bigint(20) Y 0
      author varchar(20) Y
  • 当controller中拼接sql语句, 参数不确定导致查询条件不确定的时候, 为了防止拼接的sql语句的格式异常导致报错, 我采用 where 1=1的小技巧

    	const getList = (author, keyword) => {
    		let sql = 'select * from blogs where 1=1';
    		if (author) {
    			sql += ` and author='${author}'`;
    		}
    		if (keyword) {
    			sql += ` and title like '%${keyword}%'`;
    		}
    		// ...
    	}
    
发布了64 篇原创文章 · 获赞 29 · 访问量 2333

猜你喜欢

转载自blog.csdn.net/Brannua/article/details/105157460