设计MySQL数据库的技巧_第1页
设计MySQL数据库的技巧_第2页
设计MySQL数据库的技巧_第3页
设计MySQL数据库的技巧_第4页
设计MySQL数据库的技巧_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、设计MySQL数据库的技巧作者: vivian, 出处:IT专家网,责任编辑: 包春林, 2009-08-07 04:00你正计划开发一个需要MySQL数据库的PHP网络应用吗?那么你首先需要设计MySQL数据库。本文将教会你一些设计MySQL数据库的技巧。就MySQL而言,大多数程序员都不太了解其设计背景,因此当他们尝试创建自己的数据库时,会留下很多漏洞。要想为MySQL数据库进行合适的配置,你的网络应用应该是有效且可靠的,因为它符合行业内设置数据库的标准。如何MySQL数据库设计得很合理,我们会得到下面几个好处:速度由于数据库效率很高且使用正确的数据类型和字符长度,那么查询速度就会得到相应

2、改善。安全性我们可以让特有数据保存在MySQL数据库中,所以安全性得到了改善。存储空间效率由于你开发的数据库是完全基于数据说明的,那么在MySQL数据库中就不存在多余的字节和字符。这样就可以节省磁盘空间。这篇文章将着重介绍如何为PHP网络应用设计一个MySQL数据库以及如何使用phpMyAdmin界面。下面是我们对程序员提出的几点要求:XAMPP,用于测试PHP脚本和访问phpMyAdmin。一系列域以及数据类型。要对需处理和保存的数据有比较完整的了解。要需要保存的数据中的字符数量。请注意,本教程已经过MySQL 5.0.67的测试。不同的MySQL版本可能会影响数据库的设计,但是基本的原理还

3、是相同的。本教程假定所使用的表格格式是MyISAM,它也是MySQL的默认表格。为数据库,表格,域名和数据类型命名为了帮助你了解整个过程,我们要结合实际操作来讲解。假设你需要设计一个接收客户投诉的网络应用。你可能会想到下面这些数据。每次出现与客户相关的投诉时,就需要从网络表单中收集这些数据。客户名价格。在小数点前不要超过4位数,小数点后仅保留3位数。同样保存的数值不能为负数。购买日期。(使用yyyy-mm-dd)产品序列号(仅限整数,不能为负,五位数,如果小于五位则用零代替)例如:00567,56453,00021。投诉细则(可接受任意长度的文本信息)。接收投诉的日期(显示表单提交时的时间和日

4、期)现在我们已经定义了需要收集的数据,下一步是为数据库和表格指定名称。依据MySQL指导,我们知道数据库名称,表格名称和域名都不能超过64个字符的长度,而且其中还不能包含特殊字符。我们可以将数据库命名为 “customercomplaint”,然后将数据库表格命名为“customertable”。名称越简单,在相关PHP脚本中就越容易使用。避免使用较难的或是较复杂的数据库名称,表格名称和域名,因为当你为数据库制定PHP查询时,复杂的名称会带来一些困惑。你正计划开发一个需要MySQL数据库的PHP网络应用吗?那么你首先需要设计MySQL数据库。本文将教会你一些设计MySQL数据库的技巧。至于这些

5、变量的对应的数据类型,下面的截图给出了一些可用的MySQL数据类型。最常用的MySQL数据类型是VARCHAR, DECIMAL, DATE, INT, TEXT 和 TIMESTAMP。VARCHAR通常用来表示最多为255个字符的变量长度字符串。如果你要储存和处理字母数字类的数据,这种数据类型是最合适的。适用于这类数据的典型例子包括人名,邮政编码,电话号码和不超过255个字符长度的任意字母数字组合。那些要用来计算的数字不要用VARCHAR类型保存,因为可能会导致一些与计算相关的问题。换句话说,可能影响到计算的准确性和完整性。DECIMAL最适合保存那些将被用于计算的数据。在MySQL中,我

6、们可以指定保存一些正当的数字。还可以指定是否允许存在负值。指定DECIMAL类型的长度会有些棘手。例如,如果你需要在小数点前面保存五位数,且小数点后只保留三位,那么在数据库中其适当的长度将是:Decimal(5+3,3)或 Decimal(8,3),可以使用的数据包括:12345.678,56872.690,11.6和12.568等。而这些数字则会引发出错信息:.1,.231。建议用DATE数据类型来保存日期。MySQL中默认的日期格式是yyyy-mm-dd。INT数据类型可以用来保存那些不包含小数点的数字。INT代表整数。有些整数类型以及他们最多所能拥有的数字位我们必须有所了解:TINYIN

7、T这个类型最多可容纳三位数。SMALLINT最多可容纳五位数。MEDIUMINT最多可容纳八位数。INT可以容纳十位数。BIGINT最多可容纳二十位数。TEXT可以接受文本输入,VARCHAR只能接受255个字符,但是TEXT可以用来存储超量的数据。当TIMESTAMP数据类型被选定,可以点击“CURRENT_TIMESTAMP”作为默认,MySQL会自动返回每个MySQL数据插入的确切时间。确定数据库的设计规格现在我们已经了解不同的MySQL数据类型以及数据库和表格的命名规则,那么我们可以确定网络应用的数据库设计规格了。这里强烈推荐你在递交查询前将这些规格写到纸上或者用Word文档记录数据库

8、结构。下面是一些推荐的规格:1. 第一个数值域:要收集的数据:客户姓名推荐域名:customernameMySQL数据类型:VARCHAR允许的客户名最大长度:642. 第二个数值域:要收集的数据:价格推荐域名:priceMySQL数据类型:DECIMAL小数点前最多允许位数:4小数点后保留到3位最终的小数位长度:DECIMAL(4+3, 3) 或者 DECIMAL(7, 3)不允许出现负值3. 第三个数值域要收集的数据:购买日期推荐域名:datepurchasedMySQL数据类型:DATE最大长度:不可用4. 第四数值域要收集的数据:产品序列号推荐域名:productkeyMySQL数据类

9、型:SMALLINT该变量的最大长度:5其他属性:少于5时用0填补,不允许出现负值5. 第五数值域要收集的数据:投诉细则推荐域名:complaintdetailsMySQL数据类型:TEXT最大字符长度:取决于用户的输入情况6. 第六数值域要收集的数据:投诉受理日期推荐域名:reveivingdateMySQL数据类型:TIMESTAMP其他属性:为Current_Timestamp设置默认值,这样它便可以记录投诉的确切时间。用phpMyAdmin为MySQL输入规格我们现在要用phpMyAdmin图形界面将上述规格输入到MySQL环境中。具体步骤如下:1. 用MySQL用户名和密码登录php

10、MyAdmin。2. 点击“数据库”链接,在“创建新数据库”部分中输入customercomplaint。3. 在创建新表格中输入customertable,且在域的数量中输入6。用上述设计规格来配置数据库中的变量。看下面的截图:不要忘了检查receivingdate域中Default栏目下的Current_Timestamp。Unsigned意味着只能接受正值。Zero Fill意味着空白区域会以0来填补。例如,如果产品序列号为456,MySQL会将其保存为。创建指定表格的详细MySQL查询如下: CREATE TABLE customercomplaint.customertable ( customername VARCHAR( 64 ) NOT NULL ,price DECIMAL( 7, 3 ) UNSIGNED NOT NULL ,datepurchased DATE NOT NULL ,productkey SMALLINT( 5 ) UNSIGNED ZEROFILL NOT NULL ,complaintdetails

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论