1.关系型数据库的管理系统:
好比当前有两张表:学生信息表(学号,姓名,性别,身份证号,学院,专业,入学时间),学生成绩表(学号,科目,成绩)咱们能够根据一个学生的学号查找到他的某一学科的成绩,即两张表经过学号联系起来,这就是关系型数据库管理系统。本阶段本人主要学习的是(mysql)。mysql
2.Mysql的优点: 免费,开源,跨平台,功能齐全。sql
3.客户端 / 服务端架构:
服务器的程序直接操做咱们存储的数据,咱们做为客户端链接到这个服务器程序,并发送增删改查的请求,服务器程序将进行响应,从而操做它维护的数据库。每一个客户端都得提供帐户,密码后才能登陆,登陆后才能向服务器发送请求,由服务器来直接操做数据库中的数据。咱们在学习时,将服务器和客户端程序都安装到本身的电脑上,使用时先打开服务端,在进行客户端的登陆来进行交互。数据库
4.Mysql中的可执行文件:
这里讲一下如何执行这些可执行文件,首先咱们能够在CMD中输入这些文件的路径(相对路径,绝对路径),就能够执行。其实这些文件就至关于图形化界面中的一个个图标,鼠标双击就能够执行。当咱们以为在CMD中输入路径太麻烦,能够考虑给这些文件添加快捷方式。Windows中能够把这些文件的Bin目录添加到系统变量的Path中,这时咱们直接输入命令名称便可。服务器
通常把MySql注册为Windows的服务,经过net start mysql80 ,net stop mysql80来开启和关闭服务器。架构
C:\WINDOWS\system32>net stop mysql80 MySQL80 服务正在中止. MySQL80 服务已成功中止。 C:\WINDOWS\system32>net start mysql80 MySQL80 服务正在启动 ... MySQL80 服务已经启动成功。
客户端链接服务器命令: mysql -uroot -p1234567890 ,登陆成功后,mysql> 表明命令的提示符,咱们在这后面添加增删改查的请求,交由服务器去相应。并发
客户端中断与服务器的链接: mysql> 后面能够添加 quit / exit / (\q) ,这里就将客户端关闭了,而不是关闭服务器。学习
1 C:\WINDOWS\system32>mysql -uroot -p1234567890 2 mysql: [Warning] Using a password on the command line interface can be insecure. 3 Welcome to the MySQL monitor. Commands end with ; or \g. 4 Your MySQL connection id is 8 5 Server version: 8.0.15 MySQL Community Server - GPL 6 7 Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. 8 9 Oracle is a registered trademark of Oracle Corporation and/or its 10 affiliates. Other names may be trademarks of their respective 11 owners. 12 13 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 14 15 mysql> \q 16 Bye
注意点:
Mysql命令的摆放顺序没有硬性规定;
若是客户端和服务器安装在同一台机器上 -h(客户端链接服务器时的命令参数,表示启动服务器的计算机的域名或者IP地址)能够省略。ui
5.数据类型:编码
Mysql的底层实际上是将数据存储到表中,表是由行和列组成的。spa
整数类型:
浮点数类型:
(可是当计算机在存储0.3时,转换成二进制时循环小数,只能进行四舍五入来取近似值。因此说浮点数有时候是不精确的。)
字符串类型(建议使用时用单引号括起来):
字符编码:能够将一个字符映射到一个二进制数据。字符是面向人的概念,字节是面向计算机的。采用不一样的字符编码,对应的二进制串也是不一样的。
M:表明字符可输入的大小;
W:某种编码方式下,一个字符所需的字节数;
L:按照字符编码计算下来的字节大小;
ENUM和SET类型(是一种特殊的字符串类型):
enum表示在给定的字符串列表里选一个,set可在给定的字符串列表中选择多个。
时间和日期类型:
YEAR(年份表),DATE(日期值),TIME(时间值),DATETIME(日期加时间值),TIMESTAMP(时间戳)。
NULL值:表示没有值或者未知的值。
6.数据字段的属性
Unsigned :无符号,表明不能为负数
ZEROFILL:零填充,不够的位数用0进行填充
Auto_Increment:自动增加的,每添加一条记录就在原来数据上加1,一般用来修饰主键(且为整形),能够设置初始值,步长
(一个表中最多只有一个自增列,一般给自增列创建索引)
NULL / NotNULL:没有插入该列的值;该列必须有值
DEFAULT:设置默认值
UNIQUE:代表该列或者该列组的值是不能重复的 惟一性约束