`
zyslovely
  • 浏览: 228013 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

建立数据库要求

阅读更多
一个网站不管大小,其实都是一套很完整的系统,从无到有都要经过设计、制作、编码、测试这几个阶段,而在这几个阶段中影响整个网站运行效率的主要是前期的数据库

  设计和后期的编码阶段,下面就这两大阶段跟大家讲下,如何制作出一个相对高效的网站。

  1.数据库设计

  一般来说你的数据库结构肯定是要按照给我们提要求的人来设计的,必须用到的字段是不可少的,这一点我们是无法控制的,我们能控制的可以有以下几点:

  1.数据库字段(常用的分为int,bit,datetime,decimal,nvarchar,text),

  1.数字型:一般用来记录次数分数等等,还有一种可以用在检索,排序,它比字符型来的快,如果你能用数字型的那就用数字型,特别是用来区分某条数据

  是什么类型时用,比如我们的订单是处于新建订单还是已确认还是已结,完全可以用数字1,2,3,4,5,6来表示,更重要的是如果我想看处于确认入住或

  者已结或者对账中状态的订单,如果已经是按照1,2,3,4这种顺序来区分的话那我只要查询大于某个数字的记录就可以了,而现在我们必须是按照某个字段

  等于H(已确认)或者等于D(对账中)或者等于O(已结)这在效率上明显下降很多,因为你用到了或,并且是字符型的,他是毫无规律可言的,那数据库必须把每条记录看一遍才能找到记录。

  而用大于3(比如4是已确认)的话数据库会用二分法很快就能找到记录.

  2.字符型:建议大家在用到字符型时一定要用nvarchar类型,因为实践证明用varchar等其他字符类型在存储不同编码格式的文字时会出现乱码现象(text类型除外),

  能不使用text类型就不要使用,因为text在数据库字段中他只是存储了一个指针而已,当你在查询时他首先要通过指针找具体内容然后再根据你的有求来查询,

  这在效率上已经慢人一步了,并且需要用到convert函数转换后才能进行查询,这又慢人一步,整体效率就可想而知了。

  3.日期型:主要是要注意你这个字段是需要精确到某一天还是某一天的时分秒,这主要是从数据库的整体大小考虑,数据库越大查询效率越低。

  4.添加的每个字段都要不允许为空,因为一旦为空后在查询时你会增加一个不为null的判断,这是额外的负担,而且也是可以人为避免的

  5.数据库的冗余字段,主要是用在一些统计方面,我们在数据库设计的初期虽然提要求的人没有这方面的需求,但我们必须事前做好准备,

  应该考虑到后期需要做这样的功能,尽量把统计工作分散到日常的每个简单操作中去,提高统计页面统计速度

  6.对数据库做适当的索引(索引就好像一本书的目录一样可以让你快速找到或者接近你要找的内容)

  2.编码阶段

  1.网站目录的架构

  1.上传,需要把所有上传的文件都统一归到一个目录下并且设置为可写无执行权限,这样做有2个好处:

  1.可以避免浏览者上传木马等恶意程序,因为已经把执行权限关闭了

  2.如果整站需要换服务器或者多站需要共享文件的话可以很快速的做成一个虚拟目录的形式统一调用

  3.设置方便

  2.目录层次,一般在windows操作系统中如果一个目录中存放大约超过5000个文件的话,系统或者说磁盘的的寻道时间会在1-2秒或以上,这会使前台应用程序

  产生额外的等待时间,如果这时访问量很大就很容易造成阻塞现象,解决的方法是尽量分多级目录(比如按年月日等),实践证明分3级目录是最科学有效的。

  2.Sql语句

  1.Sql语句和索引的关系,必须对经常用来查询的SQL语句建立索引并保证数据库确实使用了.

  2.SQL语句必须很高效,如何实现,可以用查询分析器来分析判断,具体怎么使用和分析可以问我,这里不具体讲了.

  3.SQL语句必须做到你的页面需要用到哪些数据你才去取哪些数据

  4.Sql语句中不要出现datepart,convert等的函数,因为用这些函数表示需要数据库在计算完这些函数之后他才能返回给你数据,那这又会使前台页面产生

  额外的等待时间,解决方法是我们宁愿从数据库中多取出数据然后再在页面中使用asp内置算法去计算,这样做后我们就把应该让数据库去计算的工作分散到

  每个页面中去,浪费的只是CPU资源,而现在的CPU是完全够用的,而且可以让数据库马上释放资源迎接下一轮的查询,

  5.SQL语句中不要使用Select中再次使用select的复合语句,一是语句混乱,二是效率低下,也不要使用<>,in,not in等带有不确定因素的方法,这些都是

  导致效率低下的语句

  3.分页

  这个在asp和asp.net中已经有很好的解决方案,这里也不多讲了,自己看以前的代码就可以了

  其他还有很多细节的地方,那只有在遇到时才能跟大家一起探讨。

分享到:
评论

相关推荐

    用企业管理器建立满足如下要求的数据库

    希望有兴趣的同学们参考看一下

    创建Library数据库语句

    内含创表语句

    城镇地籍数据库建立的研究

    对信丰县城地籍数据库建立的具体步骤作了详细阐述;对成果 质量评价、数据库建设安全管理作了详细阐述;对数据库管理功能作了详细介绍; 对县级地籍数据库的更新作了全面阐述;通过设计模型算法和编写计算机程序, ...

    arcgis建立数据库.doc

    arcgis建立数据库 第二次土地调查作为一项重大的国情国力调查,其调查主要分为城镇和农村调查两大部 分,而绝大部分调查工作主要集中在农村,加之农村地区地形复杂,地物类型多样,因此数 据量庞大,如何快速、准确的进行...

    要求: 在数据库创建一个名为BookStore的数据库,在BookStore数据库中添加一个BookInfo表用于存储图书信息表

    在数据库创建一个名为BookStore的数据库,在BookStore数据库中添加一个BookInfo表用于存储图书信息表,再往表里面添加一些测试数据、前端页面以表格形式显示所有图书信息、并完成增加添加书籍、修改书籍、删除书籍的...

    数据库创建流程.doc

    数据库设计是指:对于一个给定的应用环境,构造最优的数据库模式,建立数据库 及其应用系统,有效存储数据,满足用户信息要求和处理要求。 数据库设计的各阶段: A、需求分析阶段:综合各个用户的应用需求(现实世界...

    数据库实验

    包含一些数据库实验的项目表,可用来作数据库实验卡的项目表

    MySQL数据库:数据库实施运行和维护.pptx

    数据库结构建立之后,可以向数据库中装载数据。组织数据入库是数据库实施阶段的主要工作。 来自于各部门的数据通常不符合系统的格式,需要对数据格式进行统一,同时还要保证数据的完整性和有效性。 数据库实施、运行...

    数据库系统概论数据库及基本表的建立.doc

    数据库及基本表的建立 一、实验目的 1、掌握SQL SERVER的查询分析器和企业管理器的使用; 2、掌握创建数据库和表的操作; 二、实验内容和要求 1、练习使用SQL语句、企业管理器(Enterprise Manager)创建数据库; 2...

    实验1答案 - 建立学生数据库.sql

    建立环境实验和数据库/表 实验学时:2学时 实验类型:验证 实验要求:必修 一、实验目的 通过本实验的学习,使学生熟悉SQL Server 2014的集成环境,帮助学生掌握数据库、表的建立方法以及SQL Server的数据导入...

    《管理信息系统》数据库建立.pdf

    洛阳理工学院实验报告用纸 课程名 称 管理信息系统 专 业 工程管理 题 目 数据库建立 姓 名 班 组 学号 主要设 备 计算机(CPU:酷睿双核E7500, 硬盘:150G,内存:2G) 时 间 2013-11-30 成 绩 实验环境:WindowsXP ...

    客户订购登记数据库设计

    一个公司希望为其客户订购行为建立一个数据库。一个消费者可以有一个或多个订单,每个订单可以有一种或多种商品。每个订单有一张发票,可以通过多种方式来支付,例如支票、信用卡或现金。 要求完成的主要任务: 1. ...

    数据库实验JDBC连接数据库.docx

    实验内容 使用JDBC连接DBMS 建立数据库连接。 删除数据库连接。 使用JDBC查询TPC-H数据库 查找单个表的数据。 查找多表的数据。 使用JDBC更新TPC-H数据库 插入记录。 更新记录 删除记录 实验要求 通过联机帮助或者...

    数据库的存储过程的建立

    数据库,存储过程,代码,(1)sp_BackupDB(备份数据库),(2) sp_RestoreDb(还原数据库)

    (C语言)简单的数据库

    该项目是建立一个简单的数据库,实现建立数据库表后,导入、插入、查询、更新、 删除、帮助等基本功能。 通过malloc和free函数来实现动态申请和分配内存。 通过time函数来计算时间。 该项目共有一个主函数,采用...

    数据库实验一实验一 熟悉数据库管理工具、数据库和表的基本操作 一、实验目的: 1.了解SQL Server或MYSQL数据库的基本知识; 2.熟悉SQL Se

    实验一 熟悉数据库管理工具、数据库和表的基本操作 ...二、实验要求: 理解和掌握create, alter, drop, insert, 以及select语句的语法,特别是各种参数的具体含义和使用方法;使用SQL语句创建、修改和删

    数据库的建模方式和破解方法

     数据库设计 数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。 在数据库领域内...

    国家开放大学 MySQL数据库应用 实验训练4:数据库系统维护

    国家开放大学 MySQL数据库应用 实验训练4:数据库系统维护

    数据库设计规范与技巧

     数据库设计是指:对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。  数据库设计的各阶段:  A、需求分析阶段:综合各个用户的应用需求(现实...

    NC6.1 数据库参考脚本及临时表要求

    目录 SQL Server参考脚本 Oracle参考脚本 DB2参考脚本 数据库临时表空间要求 SQLServer参考脚本 下面脚本是用户使用SQLServer数据库时,建立数据库的演示脚本,参考使用,注意调整参数。

Global site tag (gtag.js) - Google Analytics