zoukankan      html  css  js  c++  java
  • [导入]数据库设计的一设想

    还是接上一个POST的一个想法,我不想每次查询的时候都查询备注字段,而又不想每次都写很到的SQL语句,虽然可以用一些SQL语句生成器,但毕竟越简单越好。

    于是想在数据库的设计上想点办法。例如我的数据库里有5个表里会有备注字段,于是我想应该可以把这5个表的所有备注都放到一个表里,而我的设计可以是这样的:
    t_comment里的字段c_id,c_table1ID,c_table2ID,c_table3ID,c_tabl4ID,c_table5ID,c_comment,而其中前5个分别为表的记录的ID号,用来区别备注属于哪个表及哪个记录。

    例如,我在表1里只用基本信息而不用备注,就可以直接用:
    select * from t_table1
    如果要加备注:
    select t_table.*,t_comment.c_comment from t_table1,t_comment where t_table1.t_id=t_comment.t_table1ID
    因为要使用备注的时候很少,而且相对于前一个SQL语句的使用频繁度来说,后一个几乎是不用的。而在一个系统里,如果存在一些表,它的备注是不可少的,而又不是每一条记录都会有备注,这样的做法可以省很多SQL语句的代码,而且在资源上也会省很多。

    这样管理和运行都会好很多,而且在SQL语句的写法上,平均起来也会好很多。。。。。决定这样做了。

    当然,如果反向的想一下,在每一个表里,把备注字段都修改为备注表里的ID,也是一个好的做法,这就要看备注的使用频率来决定用哪一个方法了。


    文章来源:http://computer.mblogger.cn/wucountry/posts/49781.aspx
    ================================
      /\_/\                        
     (=^o^=)  Wu.Country@侠缘      
     (~)@(~)  一辈子,用心做一件事!
    --------------------------------
      学而不思则罔,思而不学则怠!  
    ================================
  • 相关阅读:
    D3制作力导向图
    page分页问题,根据页码获取对应页面的数据,接口调用
    python列表生成式、键盘输入及类型转换、字符串翻转、字母大小写、数组广播、循环语句等基础问题
    python中将已有链接的视频进行下载
    机器学习1
    python 排序算法
    LintCode 练习题
    python 装饰器的使用
    hive 学习笔记
    hive 操作
  • 原文地址:https://www.cnblogs.com/WuCountry/p/305629.html
Copyright © 2011-2022 走看看