当前位置: 首页 > 图文教程 > 网络编程 > PHP > MySQL权威指南读书笔记(一)

PHP
PHP 加密/解密函数 dencrypt(动态密文,带压缩功能,支持中文)
用mysql内存表来代替php session的类
简化php模板页面中分页代码的解析
一周让你学会PHP 不错的学习资料
PHP 数据库树的遍历方法
php实现从ftp服务器上下载文件树到本地电脑的程序
PHP 操作文件的一些FAQ总结
PHP 截取字符串 分别适合GB2312和UTF8编码情况
PHP 编程的 5个良好习惯
php下几个常用的去空、分组、调试数组函数
PHP Ajax中文乱码问题解决方法
php 采集书并合成txt格式的实现代码
php Try Catch异常测试
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
Zend 输出产生XML解析错误
php动态生成JavaScript代码
隐性调用php程序的方法
在JavaScript中调用php程序
php 数组的创建、调用和更新实现代码
php生成SessionID和图片校验码的思路和实现代码

PHP 中的 MySQL权威指南读书笔记(一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 147 ::
收藏到网摘: n/a

MySQL权威指南读书笔记

用Mysql N年了,这是当年写的,某些网站上转载过。。

第一章,MySQL和SQL入门(一,对数据库的理解)

这一章共78页,我看了两周。

很少有技术类书籍一开篇就讨论SELECT语句的,这是此书给我的第一个印象,本章把这个语句讲解得十分详细。我觉得第一章主要是讨论两个问题:1,通过两个样板数据库讲解对数据库理论的理解;2,基本命令的使用。比较高深的东西好像不多。

一,对数据库的理解

为什么要使用数据库呢,我们都看过许多说法,不外于其提供了强大的数据处理能力,如果仅仅是简单的数据列表,电子表格就完全胜任了。在数据的世界里,MySQL被划分为关系数据库管理系统的范畴内,我们可以把这个短语划分为以下几个部分:
数据库:存放信息的的资料库,其构造既简单又遵守一定的规律
数据库内的数据都存放在数据表(table)里
数据表是由数据行(row)和数据列(colume)构成的
一个数据行就是数据表内的一条记录(record)
一个记录一般包含多个信息,数据表中的每一个数据列都对应着一个信息
关系:把存放在某个数据表内的信息和存放在另一个数据表内的信息通过某种方式关联起来,而这种关联就是通过查找两个数据表有无共同的元素来实现的。

先看一个简单的例子:

你的站点上有大量的广告,每当客户浏览你的网页时,一旦点击你的广告,你就需要做记录来计算自己得到了多少广告费。从数据库的角度来说,你应该建立三个数据表。

1,各个广告的来源company表
-------------------------------------------------
Company  Company_num        Address        phone
SONY         13             马家沟        0451-21
CANON        14             新阳路        0451-22

2,各个广告的数据ad表
----------------------------------------
Company_num        Ad_num        Hit_fee
12                  48             001
13                  49             003
14                  50             004

3,每个广告的点击率hit表
------------------------
Ad_num        Date
48             3.12
49             3.14
48             3.12
50             3.14

看看我们能通过这三个数据表查询到什么信息?

1,你为多少家公司做广告?
查一查company表有多少行就知道了
2,你一共有多少个广告?
查一查ad表有多少行就知道了
3,在3.12这一天,你一共显示了多少个广告?
查一查hit表里面Date数据列的值是3.12的数据行共有多少?
4,在3.14这一天,CANON的广告被点击了几次?
首先在company表中找到CANON公司的公司代码(14),根据这个代码在ad数据表中找到CANON公司的广告代码(50实际上可能是很多个),然后分别在hit表中找到3.12日这个代码的点击率。

看到这里我们就能明白,为什么要费力气地把数据“分散”到多个表里面,而不是放到一个大表格中,数据库的非凡能力就表现在这里,把分散在多个数据表中的数据用一种相互匹配的方式迅速地搜集到一起得出结果,这就是数据库式的思维方式。我们必须慢慢习惯,然后自觉运用。是不是很简单?

如何让读者更好地理解这种“关系”的概念,书中给了两个样板数据库,听我慢慢道来:
1,你现在是美国历史研究会的秘书,这个协会是由一些对美国历史感兴趣的人自发地组织起来的,由于各人的爱好,他们将定期地交纳一定的会费来维持其会员资格,交上来的会费主要用于支付