题外话:
作为一个码农,我现在不仅缺爱,更缺美工!没有美工的日子,我还要自己作图,好苦逼啊~下面是这节是我的惨无人道的数据库课程笔记,反正我是熬下来了。
数据库类型:
定义:为了存储一个库,以表或者单元形式存储。 我们常见的的数据库有:
2.ORACLE:大型数据库 JAVA开发常见使用 ,维护成本高,价格贵,能够存储大量数据,为大型企业所应用。
3.MySQL :开源免费,轻量级,网站开发使用,安装配置简化,适用于网站数据库。后来被PRECLE收购进行全面开发,应用前景比较广。
3.IBM DB2: IBM开发的大型数据库和ORECLE相似,非常非常强大,功能上甚至比PRECLE还要完善。运维费用很高,技术要求很高,前景应该不错。
4.SQLite :只需要组件来建立数据库,生成一个2进制文件,方便开发移动使用,无线路由器上用来保存宽带账号密码信息的数据库很多用到SQLite。
为什么使用MySQL:
PHP开发过程和应用过程中,由于MySql的负载能力与PHP相似,而且遵循非常规范的SQL语句,轻量级显著减少运维难度,免费开源,定义化高。 已经有多年与PHP结合经验,在大多数PHP程序中都默认MySQL环境。
数据库结构:
数据库(品牌称呼)——DATABAS(库)——TABLES(表)——FIELDS(字段)——YTPE(字段类型)——CONTENT(字段)
经典数据库管理工具:phpMyAdmin(PHP程序编写)——这个大家做网站都是用过的吧。
数据类型及部分应用:
数据类型 | 描述 | 应用范围 |
int,smallint | 整型,常用int型,取值最大11位 | 点击量,编号,真假 |
char ,varchar | 字符串型,char最大取值255字节,varchar更长并伸缩 | 标题,姓名,关键字 |
Date,datetime | 日期型,固定格式: 0000-00-00 00:00:00 |
DATE类型格式固定 不需要设置长度。 |
float ,double | 小数类型,一般设置类型为 (总长度,小数位长度) |
价格,科学数值等 |
Text,longtext | 备注型:没有长度限制,但取决于服务器和mysql性能 | 新闻内容,长内容 |
下面我给出一个PHPMyAdmin中的表单设置页面图,在大部分情况下我们都是用工具来写表单的,用代码写反而更加麻烦一些,对于本地开发用tool就可以了 (字段类型设置样板如下)——
SQL数据库语句:
我们不可能每次都用工具操作表单,用户端也是,这就要求我们掌握SLQ语句来操作表单。
增加语句:
标准增加语句:
简化增加语句:
赋值增加语句:
查询语句:
查询:
Select *(代表所有字段) 或 函数(字段) from 表
函数相关:
count(*)//统计字段条数 max(字段)//求最大值 min(字段)求最小值 sun(字段)//求和 avg(字段)//求平均值
条件查询:
select 字段,字段,…… from表where 条件 【条件运算符 或 函数】
模糊查询:
Select 字段,字段,…… from 表 where like %值% //%代表匹配任意字符 当然也可以not like
Select字段,字段,……from 表 where 字段 in (值,值) //效率非常低从字段里挑出值来查找
Select字段,字段,……from 表 group by 字段 //把重复字段祛除,剩下不重复字段
Select字段,字段,…… from 表 order by 字段 [asc/desc]// 根据字段排序 [正序/倒序]
EX: ……order by ID asc, name dese //先按照ID排序,再按照Name排序
Select字段,字段……from 表 limit 起始位置,条数 EX: limit 0,5//从第1条到第五条
当出现多个情况 组合时候应遵循 WGOL 规范 (where ,group,order,limit)
例子: 查询表user,id倒序,age小于30岁,不重复职业job,取前10条。
删改语句
改: Update 表 set 字段=值,字段=值 [where][group][order][limit]
删除:delete from 表 [where][group][order][limit]
测试练习:
首先我们打开PHPmyadmin,点击text数据库,建立一张新表:
然后我们建立以下几个字段名,注意类型!datE 不设置长度! PS:英语不好写了个data 数据上,下面第二章图我又修改了字段名。
经过如上操作我们建立了这个表单如下图所示:
注意PHPMyadmin自带的插入工具能够方便我们进行可视化操作,但在PHP程序中我们都是通过SQL语音进行表单操作,所以我们单击 “SQL”进入SQL语音执行页面。
注意这里我们要引入“`”符号,它叫做 “小单引号” 我输入一排“““““““这个符号是英文状态下 ESC键下面的按键。 “小单引号”的引入是为了规范数据库语句。
只运用于: 数据库名,表单名,字符串名 。
//执行写入操作// insert into `test1` (`id`,`name`,`date`,`price`,`content`) values (1,'方块','1995-08-26','12.12','十二块二毛二我也买不起!') //写完后点击执行。 //执行写入操作2方法// insert into `test1` set id=2 ,date='1994-02-21',name='steven',price='12.11',content='I cant speak english !'
select count(*)from `test1` //统计字段数 select sum(price) from `test1` //统计价格一栏的和 注意 纯英文编辑,括号不要用中文下的,否则报错。 select * from `test1` where `id` in (1)//查询id为1的信息 select * from `test1` where `name` like '%a%'//查询名字中带有a的字段信息 select* from `test1` order by `id` desc //以ID字段倒序排列 select* from`test1` limit 2 //以数据存储顺序前两条 update `test1` set name=fkwebs where id=2 //将ID为2的用户名改为fkwebs delete from `test1` where `name`=1 //删除表单里mame=1的字段
后记:
其实操作完了,也就那么些事,忽然觉得好简单没有那么难的说,下节课,我们要来一个简单的开发实例!兄弟们,准备好迎接挑战了么?