博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据库设计与SQL查询优化
阅读量:6978 次
发布时间:2019-06-27

本文共 446 字,大约阅读时间需要 1 分钟。

hot3.png

1、概述

 131301_dcFN_2320342.png

 131508_7W6w_2320342.png

2、数据库设计原则

    1)熟悉需求

131831_DDgm_2320342.png

131925_3sQi_2320342.png

     2)开发符合规范的数据库

    3)审核数据库设计

审核组除了要审核数据库设计中的逻辑问题;还要关注数据字典是否详细易懂;数据表结构是否冗余及提出修改建议。

 3、数据库设计规范

    1)命名规范

132935_L25K_2320342.png

133059_bfEj_2320342.png

133157_v6Uj_2320342.png

133253_Ucgy_2320342.png

133344_xt2g_2320342.png133440_jnnY_2320342.png133531_sHpK_2320342.png133723_0ETC_2320342.png133802_gKwS_2320342.png133846_i7YX_2320342.png133932_bVtc_2320342.png

     2)明确实体和数据表的关系

134526_iNmh_2320342.png134645_RVTx_2320342.png

    3)一张数据表不能既没有主键也没有外键

134900_BHj3_2320342.png

    4)基本表特征

135113_RyBf_2320342.png

135204_9QKH_2320342.png140309_7Tqu_2320342.png

140614_2Ct0_2320342.png

140659_1fXE_2320342.png140758_48yl_2320342.png143031_D304_2320342.png143331_Zpat_2320342.png

143505_sUPW_2320342.png

     5)必须满足第一第二范式,尽量满足第三范式

143844_nw32_2320342.png

143951_AOtV_2320342.png

     6)简洁的E-R图

152501_Vmjt_2320342.png

菱形152551_UtpJ_2320342.png

    7)符合完整性约束

152906_0IsJ_2320342.png

4、使用PowerDesigner设计数据库

111257_gvuo_2320342.png

111448_6mnz_2320342.png

111806_jbcD_2320342.png

111947_rE8i_2320342.png

112133_BVaR_2320342.png

112412_YIke_2320342.png

112640_XCkc_2320342.png

 112842_gt29_2320342.png

113027_4sBZ_2320342.png

113239_tL3t_2320342.png

113354_rq91_2320342.png

 114159_rmdz_2320342.png

 200423_VIpa_2320342.png

200744_Lur7_2320342.png

200800_HzBK_2320342.png

201031_izlI_2320342.png

201205_Qo4D_2320342.png

5、数据库设计技巧

 202253_HaZf_2320342.png

202350_HDa4_2320342.png

202701_0noz_2320342.png

202745_uLAG_2320342.png

203020_kAIh_2320342.png

 6、劣质SQL判断条件

203523_5kyO_2320342.png

203612_wDFm_2320342.png

203801_dFsQ_2320342.png

203840_hNJu_2320342.png

204027_G3st_2320342.png

 7、索引

204611_Fxsq_2320342.png

204659_WTk4_2320342.png

205007_c65k_2320342.png

205100_xKVc_2320342.png

205155_1ZJ2_2320342.png

205247_uhMB_2320342.png

205444_P4sd_2320342.png

 事例:

124340_i9YJ_2320342.png

124515_gINS_2320342.png

125104_7wFo_2320342.png

125327_KiIV_2320342.png

125512_Sz7X_2320342.png

125747_xVZ8_2320342.png

125932_Hb7i_2320342.png

 8、索引类型

130128_48fH_2320342.png

130313_bhpv_2320342.png

130743_JAXw_2320342.png

130930_s6we_2320342.png

 134241_xJYO_2320342.png

134450_sS9l_2320342.png

134734_UqwN_2320342.png

134828_vLPD_2320342.png

 134956_HI6o_2320342.png

 9、反向键索引

142118_UEfd_2320342.png

142250_vdjK_2320342.png

142333_myav_2320342.png

142415_YE43_2320342.png

142458_3ZMo_2320342.png

142542_l2SQ_2320342.png

142636_mmYr_2320342.png

142721_Ur69_2320342.png

142809_Qb39_2320342.png

142855_0Mxk_2320342.png

142944_jVWJ_2320342.png143028_0O8F_2320342.png143110_xi8x_2320342.png143149_8j5U_2320342.png

 143340_MMDF_2320342.png

事例:

143538_WYDy_2320342.png

143650_QfEC_2320342.png

143810_qRQk_2320342.png

注:主要用于多用户执行频繁插入操作

 10、基于函数的索引

144127_UDHp_2320342.png

144204_6S83_2320342.png

144256_ZJbp_2320342.png

144625_SnwS_2320342.png

144430_uwQ2_2320342.png

144517_zvDc_2320342.png

11、位图索引

144827_WyLj_2320342.png144915_XLar_2320342.png

145009_wK31_2320342.png145111_QTeT_2320342.png145219_H2uu_2320342.png145408_CB3g_2320342.png145449_cE68_2320342.png

145544_ADy0_2320342.png

145652_JI5w_2320342.png

 12、表分区

110514_jX5l_2320342.png

110705_8XcE_2320342.png

110803_HsKB_2320342.png

 优点:

1)提高数据的可用性

111535_LCcV_2320342.png

2)减少管理负担

111743_3DpZ_2320342.png

3)改善语句性能

111934_8mMT_2320342.png

112056_X5kV_2320342.png112152_XF5I_2320342.png 112305_MkAH_2320342.png

 112756_Zb3o_2320342.png

13、区间分区

113017_ONXu_2320342.png

113508_x9Gu_2320342.png

 120013_rSdK_2320342.png

120114_jwGt_2320342.png

 120327_hGMm_2320342.png

120417_QIsL_2320342.png

120505_ZAqY_2320342.png

141206_TREf_2320342.png

 14、散列分区

141322_Jgzx_2320342.png

 141503_lTZT_2320342.png

 143027_VbpR_2320342.png

143142_B2BI_2320342.png

143347_3yyb_2320342.png

 15、列表分区

144625_qPG8_2320342.png

144716_V9CG_2320342.png

144817_qKyo_2320342.png

 145144_bL4w_2320342.png

 145330_nZoQ_2320342.png

 150001_0bdx_2320342.png

150138_D9KB_2320342.png

 150922_U3Do_2320342.png

151006_M6Tg_2320342.png

 151433_Uogy_2320342.png

 151635_6Ua8_2320342.png

 16、分区维护

151911_sYYt_2320342.png

152136_I6Ie_2320342.png

152234_QMrE_2320342.png

 152442_3kez_2320342.png

152602_ULuM_2320342.png

152752_mni6_2320342.png

152925_3Uib_2320342.png

 153110_ISeA_2320342.png

 153244_JiYt_2320342.png

153534_zaXJ_2320342.png

17、sql语句优化的途径

 153925_bwpy_2320342.png

154234_aaWw_2320342.jpeg

154332_ZM0H_2320342.png

154434_AuLY_2320342.png

 

转载于:https://my.oschina.net/u/2320342/blog/481201

你可能感兴趣的文章
集成支付宝钱包支付iOS SDK的方法与经验
查看>>
spring-data-mongodb必须了解的操作
查看>>
Android中的JSON详细总结
查看>>
[转载]分享WCF聊天程序--WCFChat
查看>>
程序员说话技巧大放送,受教了
查看>>
Linux指令--文件和目录属性
查看>>
PHP smarty缓存
查看>>
[数位dp] spoj 10738 Ra-One Numbers
查看>>
HDU 2206 IP的计算(字符串处理)
查看>>
您会让自己的小孩将来从事软件研发吗?
查看>>
【Maven】maven的安装配置和ecplise结合
查看>>
CHIL-SQL-MIN() 函数
查看>>
驾考试题的json代码
查看>>
黑马基础阶段测试题:通过字符输入流读取info.txt中的所有内容,每次读取一行,将每一行的第一个文字截取出来并打印在控制台上。...
查看>>
优秀博客
查看>>
iOS 开发 OC编程 数组冒泡排序.图书管理
查看>>
VS 2010 快捷键大全
查看>>
决策树算法
查看>>
前端的一些小的效果
查看>>
angular指令ng-class巧用
查看>>