初识MySQL,如何学习mysql数据库

1、什么是数据库

数据库管理软件,数据库相当于是一个文件系统,只不过我们要通过命令(SQL语言)来操作这个文件系统Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:关系数据库管理系统)应用软件之一。由瑞典MySQLAB公司开发,

目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。Mysql是开源的,所以你不需要支付额外的费用。Mysql支持大型的数据库。可以处理拥有上千万条记录的大型数据库。

MySQL使用标准的SQL数据语言形式。Mysql可以允许于多个系统上,并且支持多种语言。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。Mysql对PHP有很好的支持,PHP是目前最流行的Web开发语言。MySQL支持大型数据库,支持万条记录的数据仓库,32位系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。

2、数据库作用

储存数据,数据的仓库,带有访问权限限制不同人的不同操作

3、为什么要学习数据库

1、生活所迫(哈哈)2、后台取到数据进行处理封装,交给前端去展示

4、常见数据库

常见关系型数据库(描述实体和实体之间的关系):MySQL,Oracle(收费,适用于大型电商网站),mariadb(mysql开源版本的一个分支),db2(IBM公司的,银行系统大多使用),SQLserver(Windows里面。**网站)NOSQL非关系型数据库(key:value):mongodb,redis

5、其他小知识

1、什么是服务器就是一台电脑,这台安装相关的服务器软件,这些软件会监听不同的端口,根据用户访问的端口号,提供不同的服务

2、数据库相关工具之Navicat

javaNavicat是一套快速、可靠并价格相当便宜(当然有破解的)的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人

3、数据库相关工具之PowerDesigner

通俗的说PowerDesigner就是个建模工具(设计数据库),提供了一个完整的建模解决方案,业务或系统分析人员,设计人员,数据库管理员DBA和开发人员可以对其裁剪以

4、安装和卸载卸载:1、打开控制面板,删除软件2、删除MySQL安装目录的所有文件:c\Programfiles\mysql3、删除mysql数据库存放文件:c\ProgramDara\MYSQL

二、

1.DDL(DataDefinitionLanguage)

1、概念DDL数据定义语言,定义数据库,数据表他们的结构:create,drop,alter,show2、实例

crud数据库1、数据库创建:createdatabase数据库2、查看数据库定义:showcreatedatabase数据库3、查看正在使用的数据库:selectdetabase()4、修改数据库:alterdatabasecharacterset字符集5、删除数据库:dropdatabase数据库6、选中数据库:use数据库名

2、DML(DatabaseManipulationlanguage)

概念:主要用来操作表中的数据:insert,delete,update注意:delete(一条一条删除表中的数据,如果数据少用这个删除效率高);truncate(先删除表再重建表,数据很多的话用这个效率比较高效)

3、DQL(DatabaseQuerylanguage)

注意:用的最多select

select和where后面可以跟的一些小跟班:

1、排序:orderby2、聚合函数:sum()等等注意:where后面不能接聚合函数如下面的就可以(子查询):select*fromproductwhereprice(selectavg(price)fromproduct)3、判断空:isnull,isnotnull4、分组:Groupby编写顺序与执行顺序:1、编写顺序:s...f..w..G..H..O:Select..from...where...Groupby..Having..orderby2、执行顺序:F..W..G..H..S..O:from....where...groupby...having..select..orderby

4、DCL(DatabaseControllanguage)

数据控制语言:定义访问权限,取消访问权限,安全设备:grant

三、多表操作

1、会创建多表及多表的关系

多表之间的关系如何维护:

外键约束(foreignkey)给一个表添加外键约束:altertable表2addforeignkey(cno)references表2(cid)(给表1的cno字段添加外键约束为表2的cid字段)添加了外键如何删除:要先删除表2中对应的字段,在去删除表一要删除的字段

多表之间的建表原则

建库原则:通常情况下,一个项目/应用建一个数据库一对多:在多的一方添加一个外键,指向一的一方多对多:多建一张中间表,将多对多的关系折成一对多的关系,中间表至少要有两个外键:这两个外键分别指向原来那张表,原来的表和这个中间表的关系是一对多的关系一对一:第一种方式:将一对一的情况,当作是一对多情况处理,在任意一张表添加一个外键,并且这个外键唯一指向另外一张表第二种方式:直接将两张表合并成一张表第三种方式:将两张表的主键建立起连接,让两张表里面主键相等主键约束及唯一约束:主键约束:默认不能为空,唯一,外键都是指向另外一张表的主键,主键一张表只有一个唯一约束:列面的内容,必须是唯一,不能出现重复情况,为空,唯一约束不可以作为其他表的外键,可以有多个唯一约束

2、多表查询

内连接:隐式内连接:select*fromproductp,useruwherep.id=u.id显式内连接:select*fromproductpINNERJOINuseruONp.id=u.id(查询出来的结果是交集)外连接:左外连接(LEFTOUTRTJOIN):会将左表的所有数据查询出来,如果右表没有对应的数据,用null代替右外连接(RIGHTOUTRTJOIN):会将右表的所有数据查询出来,如果左表没有对应的数据,用null代替分页查询:格式:limit起始索引,显示几页起始索引算法:startIndex=(index-1)*3子查询:sql的嵌套text从事java开发,在工作中SQL是必备技能,小伙伴大家加油吧!

总结

总结了MySQL的基本概念,MySQL的分类(四类),MySQL的多表操作(多表之间关系如何建立,多表之间的查询)




转载请注明:http://www.aierlanlan.com/rzfs/1565.html