0

0

数据库初识--从MySQL 出发_MySQL

php中文网

php中文网

发布时间:2016-06-01 13:07:07

|

1413人浏览过

|

来源于php中文网

原创

       要学web 开发,也得先对数据库有所了解呀。数据库分门别类,多种多样,目前我选择了 mysql 。

  看了 MySQL,觉得数据库处理也不是很难,主要就是一些对数据的处理,MySQL 主要就是一些命令的运用。

  看过了,怕忘了吧,得及时记录下来。


  数据库基础

  (1)数据模型--有三类

           层次模型 :用树形结构来表示实体及其之间的模型。

           网状模型: 以实体型为节点的有向图表示各实体及其之间联系的模型。

           关系模型: 用二维表格表示实体及其相互关系的模型。

 

            前两模型较不常见,所以主要考虑 关系模型。


   (2)关系数据库

           关系是一个带有属性的表,这个表称为关系表,一组表组成一 数据库。

           表由行和列组成,其行称为元组,列称为属性。

           属性的取值范围称为域,行称为记录。

    (3)键的选用

           主键(Primary Key)  组合键 (Concatenated Key) 候选键 (Candidate Key) 外键 (Foreign Key)

         哭 这些键的具体区别我还是看不懂啊.....看来还要多理解理解.....

     (4)关联类型

            一对一    一对多    多对多  

     (5) 最后还有 第一二三范式    实体/参照/域完整性  主键/唯一/外键/默认约束  等等.......也不多说了..


********************************************华丽分割线************************************************************



    MySQL  主要命令

   (大小写不区分)

     MySQL 的数值类型有:

     整型: tinyint  smallint  mediumint  bigint   ;   浮点型 : float  double  decimal  ;

     MySQL 还有数据字段修饰符:

       自动增量设置  auto_increment   :  create table book(id int auto_increment,name varchar(15));

      然后插入数据  insert into book (id,name) values("1","book1"); insert into book(bame) values("book2"); 则 id 会自动自增。

自动补齐前导 0   zerofill : create table book(id int(3) zerofill,name char(20)); 再插入如上..id 就会变为 001 之类的.

另外还有两个类型: blob 和 text 通常保存较大文本,但前者可以保存二进制文件(如图片?)。

                                同样也有  tinyblob  blob  mediumblob  longblob  tinytext  text mediumtext  longtext

                                还有 enum 类型和 set 类型,恕我还没弄懂这俩货..暂时不说了...

                                还有那些跟时间日期相关的方法,规则也挺多,也跳过吧..

  

              例如创建 books 数据库 :create database books;   

                     查看数据库大纲信息:show databases;

             创建新用户 user1并分配权限 select (他使用密码  "passwd",密码可选可不选) :

             grant select on *.* to user1 identified by "passwd" with grant option;

             查看用户权限: show grants for user1; 

             撤销用户权限:revoke select on *.* from user1;

             要选择某数据库(books):use books;  ----> (选择了才能操作它里面的表)  查看数据库表: show tables;

            创建数据库表(book) : create table book(id int,name varchar(15),price varchar(10));

           其中 前一项是属性,后一项是对应类型,varchar(15) 和char(15)差不多,只是后者固定了15个空间。

           为表中插入值 :insert into book values(1 book1 10,2 book2 30);

           查看某特定表(book)信息 : describe book;

            删除数据库(books): drop database books ;

初阶PHP Apache MySQL网站设计
初阶PHP Apache MySQL网站设计

初阶PHP Apache MySQL网站设计来自作者多年学习、应用和讲授PHP的经验与体会,是专为学习PHP+MySQL数据库编程人员编与的入门教材。在最后二章设计了2个贴近实际应用的典型案例:留言本系统和论坛系统,每个案例先介绍开发思路、步骤,再给出全部源代码,使所学内容与实际应用紧密结合,特别是论坛系统将全书的案例串讲起来,力求使读者学到最贴近应用前沿的知识和技能。

下载

           删除表数据(book) :delete from book where id="2";  删除表中 id=2 的数据;

           为某些值创建一视图(myView),就是某种意义上的“整合”:

    create view myView as select id,name from book;    接下来 select * from myView; 就可以查看视图(也可用 describe myView;)

         删除视图  drop myView;

         查询语句+约束(where后面是约束): select * from book where name="book2";

                                   (and  or 等):select * from book where name="book2" and/or id="1";

                        (limit )  : select id from book order by id limit 3; 其中order by 可以id 方式来排序. 还可换成 limit 1,3; 代表区间1 ~ 3 ;

          模糊查询(like):与通配符“%” 和下划线 “_"搭配使用,前者配一个或多个字符,后者只配一个字符。

                        如 select * from book where name like('_k%');

          联合多列(concat) :就是把某些元素联合在一起:作为一个新的“列”?

                         如 select id,concat(name," ",price) as info from book; 就是 把 name 和 price 联合成 info 再与id 项 弄出来呗..

          查询最大值最小值  : select max(id)/min(id) as id from book;  计算行数:            select count(*) from book; 

          分组查询 (group by ): select * from book group by name ;

           更新数据(更改数据  update ): update book set name="book111" where id="2"; 就是把id=2 的name 更改了。

等等等等........................


除此之外,最好为数据库创建索引,可以加快查询速度。

使用 alter table :  alter table book add index/nique/rimary  index_name;  其中三项为索引类型。

使用create index: create index index_name on book;

使用create table:  create table book(index index_name);

查看(id)索引的使用:explain select id from book where name="book2";

还可以从宏观上查看  show status like "Handler_read%";


表的类型....

MyISAM (默认)  HEAP(最快)   可直接如此定义 : create table book(id char)type = HEAP;

还有锁定表  READ 和 WRITE   外键   这三个还是看不大明 .....先不说了..

还有学会创建临时表  create temporary table book(id varchar(10) NOT NULL,);  ps: NOT  NULL 可以直接用, 你懂的吧....

分析表有 analyze table book; 检查表有 check table book ; 优化表有 optimize table book;

等等等等......

命令虽多,多打打,始终会熟悉的...



**************************************************************华丽的分割线****************************************************




第一篇博客就这样写完了,耗时将近两个钟头,而且是熬夜写...........精神可嘉..................

第一次写博文,格式什么的都不熟悉  尴尬

以后不能熬夜了.......

奋斗奋斗奋斗










本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
go语言 注释编码
go语言 注释编码

本专题整合了go语言注释、注释规范等等内容,阅读专题下面的文章了解更多详细内容。

2

2026.01.31

go语言 math包
go语言 math包

本专题整合了go语言math包相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

go语言输入函数
go语言输入函数

本专题整合了go语言输入相关教程内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

golang 循环遍历
golang 循环遍历

本专题整合了golang循环遍历相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.31

Golang人工智能合集
Golang人工智能合集

本专题整合了Golang人工智能相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

76

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

73

2026.01.31

无需付费的漫画app大全
无需付费的漫画app大全

想找真正免费又无套路的漫画App?本合集精选多款永久免费、资源丰富、无广告干扰的优质漫画应用,涵盖国漫、日漫、韩漫及经典老番,满足各类阅读需求。阅读专题下面的文章了解更多详细内容。

67

2026.01.31

漫画免费在线观看地址大全
漫画免费在线观看地址大全

想找免费又资源丰富的漫画网站?本合集精选2025-2026年热门平台,涵盖国漫、日漫、韩漫等多类型作品,支持高清流畅阅读与离线缓存。阅读专题下面的文章了解更多详细内容。

19

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号