Mysql数据库学习总结(一)
数据库概念
数据库(Database)是按照数据结构来组织、存储和管理数据,建立在计算机存储设备上的仓库。
简单说,数据库就是存放数据的仓库。和图书馆存放书籍、粮仓存放粮食类似。
数据库分类
分为 关系型数据库 和 非关系型数据库
所谓的关系型数据库:就是基于关系模型建立的数据库。
那什么是关系模型?
关系模型:利用关系(二维表),去描述实体信息,和实体之间的联系的一种架构。
上面所谓的关系,其实就是二维表。
接下来:我们画图来理解下上面的这段话,怎么用二维表来描述实体,和实体之间的联系的
学生表:
姓名 |
年龄 |
身高 |
体重 |
张三 |
30 |
187 |
70 |
李四 |
40 |
165 |
60 |
教室表:
班级名称 |
教室号 |
|
Php1016 |
102 |
|
Java1011 |
201 |
|
.net0918 |
108 |
|
Ios1021 |
218 |
|
上面的学生表的每一行(我们也称为一条记录),比如张三这一行,就描述了张三这个实体,有姓名、年龄、身高、体重。教室表的每一行也描述了一个实体。
那怎么描述他们实体之间的关系呢?比如我想知道 张三所在班级的班级号是多少?
我们在学生表上加上一个字段,用来存放班级信息
姓名 |
年龄 |
身高 |
体重 |
班级名称 |
张三 |
30 |
187 |
70 |
Php1016 |
李四 |
40 |
165 |
60
|
Java1011 |
这个时候,学生表和班级表之间就有了联系了。我们通过张三确定他的班级名称是php1016,然后通过学生表找到他的班级号是102.
常见的关系型数据库和非关系型数据库
常见的关系型数据库:
oracle、DB2、SQLserver、Access、mysql、sqllite
大型数据库:oracle、DB2
中型数据库:sqlserver、mysql
小型数据库:access、sqllist
mysql:之前属于sun公司,后来sun被oracle收购,如今mysql属于oracle公司。
是开源免费的数据库软件,php开发中最常用
非关系型库近年来发展迅猛,nosql(not only sql 不仅仅是sql)
memcache、redis、mongoDB
按照key-》value(键值对)方式存放数据
"asfjaslfjaslfjaslf"=>{"name":'zhangsan',"age":18,'info':{"sex":'男'}}
SQL介绍
结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
SQL就是专门为关系型数据库而设计出来的。它是一种语言,能定义变量,也有程序控制语句。
SQL分类
1、 数据查询语言(DQL:Data Query Language):
其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字 有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。
专门用于查询数据:代表指令为select/show
2、 数据操作语言(DML:Data Manipulation Language):
其语句包括动词INSERT,UPDATE和DELETE。它们分别用于添加,修改和删除表中的行。也称为动作查询语言。
专门用于写数据:代表指令为insert,update和delete
3、 事务处理语言(TPL):
它的语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。(不是所有的关系型数据库都提供事务安全处理)
专门用于事务安全处理:transaction
4、 数据控制语言(DCL):
它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
专门用于权限管理:代表指令为grant和revoke
5、 数据定义语言(DDL):
其语句包括动词CREATE和DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。
专门用于结构管理:代表指令create和drop(alter)
MySql基本介绍
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
Mysql中用到的操作指令就是SQL指令。
我们以window下讲解mysql的启动和客户端的登录。
启动和停止MySQL服务
Mysql是一种C/S结构:客户端和服务端
服务端对应的软件:Mysqld.exe
命令行方式
通过Windows下打开cmd控制器,然后使用命令进行管理
Net start 服务(mysql):开启服务
Net stop mysql:关闭服务
系统服务方式
前提:在安装的Mysql的时候将mysql添加到Windows的服务中去了
方式1进入服务:
方式2进入服务:通过命令行:services.msc
通过服务对Mysql服务器进行管理
方案1:右键服务,然后选择开启或者停止
方案2:双击服务,进入到服务详情界面,可以点击开启或者停止按钮
mysql客户端登录mysql服务器:
找到mysql.exe(通过cmd控制台:如果在安装的时候指定了mysql.exe所在的路径为环境变量,就可以直接访问;如果没有,那么就必须进入到mysql.exe所在路径)
举例:
去图书馆:1图书馆地址(文胜大楼) 2、第几层(2楼) 3、确认用户信息
连接服务器:
mysql -h域名或者ip地址 -P端口号 -u用户名 -p密码
-h 和-P可以不写用默认,localhost和3306
-u和-p是用户名和密码,用于确定客户端的身份
注意事项
1、 通常端口都可以默认:mysql坚挺的端口通常都是3306
2、 密码的输入可以先输入-p,直接换行,然后再以密文方式输入密码
退出客户端连接
断开与服务器的连接:通常Mysql提供的服务器数量有限,一旦客户端用完,建议就应该断开连接。
建议方式:使用SQL提供的指令
Exit; //exit带分号
\q; //quit缩写
Quit: