MySQL---初识mysql,数据库的基本操作

初识mysql

1.数据库简介

(1)什么是数据库(DB)?
数据库就是存储数据的仓库。为了方便数据的存储、管理,将数据按照特点的规律存放在硬盘上,通过数据库管理系统有效的管理数据库内的数据。
(2)什么是数据库系统(DBS)?
数据库系统比数据库大很多,他由数据库、数据库管理系统、应用开发工具构成。
(3)什么是数据库管理系统(DBMS)?
用来管理数据的软件。

2.sql简介

MySQL是DBMS,他通过SQL语句来管理数据库。
(1)什么是sql?
结构化查询语言,数据库管理系统通过sql语句来管理数据库中的数据。
(2)SQL语言的组成?

  • DDL:数据定义语言,主要用于定义数据库、表、索引、视图和触发器等等。
    • create—建立表
    • alter—更改表
    • drop—删除表
  • DML:对于数据的增删改。
    • insert—插入数据
    • updata—更新数据
    • delete—删除数据
    • select—查看数据
  • DQL:数据检索语言,用来从表中获取数据。像selec语句等
  • DCL:数据控制语言,主要用于控制用户的访问权限。像grant、reovek等等
    主要:SQL是一些语句,而SQL Server与MySQL一样是DBMS,他们都已SQL语句为基础来管理数据。

3.如何进入MySQL

先鼠标右击“我的电脑”,选择“管理”,选“服务”,再选“服务”,找到mysql80,然后将MySQL80服务开启。之后,可通过以下两种方式中的一种进入数据库:
(1)直接打开MySQL,输入密码
(2)在命令行中输入:mysql -uroot -p,再输入密码

4.退出MySQL

输入命令:exit

5.数据库的相关操作

数据库中的语句以分号;结尾
(1)创建数据库:
CREATE {DATABASE|SCHEMA} [IF NOT EXISTS] db_name [[DEFALIT] CHARACTER SET[=] charset_name]
(2)查看当前所有数据库:
SHOW {DATABASES|SCHEMAS}
(3)查看指定数据库的定义:
SHOW CREATE {DATABASE|SCHEMA} db_name
(4)查看上一条语句产生的警告信息
SHOW WARNING
(5)修改指定数据库的编码方式
ALTER {DATABASE|SCHEMA} db_name CHARACTER SET [=] 'charset_name]
(6)使用数据库
USE db_name
(7)得到当前打开的数据库名称
SELECT DATABASE()
(8)删除数据库
DROP {DATABASE|SCHEMA} [IF EXISTS] db_name

6.MySQL支持是数据类型

下面具体的例子是举例常见的:
(1)整型:YINYINTSMALLINTINTBIGINT等等
(2)浮点型:FLOAT[(M, D)]DOUBLE[(M, D)]等等,M是总位数,D是小数位数
(3)字符串型:CHAR(20)是定长、VARCHAR(20)是不定长、ENUM('VALUE1', 'VALUE2'...)是枚举类型,只能选一个,SET('VALUE1', 'VALUE2'...)可以选择多个等等
(4)日期时间类型:YEARTIMESTAMP是时间戳等等
(5)二进制类型

7.关系模型

(1)主键
作为主键最好是完全业务无关的字段,我们一般把这个字段命名为id。常见的可作为id字段的类型有:

  • 自增整数类型:BIGINT NOT NULL AUTO_INCREMENT
  • 全局唯一GUID类型:使用一种全局唯一的字符串作为主键,类似8f55d96b-8acc-4636-8cb8-76bf8abc2f57。GUID算法通过网卡MAC地址、时间戳和随机数保证任意计算机在任意时间生成的字符串都是不同的,大部分编程语言都内置了GUID算法,可以自己预算出主键。

注意: 如果使用INT自增类型,那么当一张表的记录数超过2147483647(约21亿)时,会达到上限而出错。使用BIGINT自增类型则可以最多约922亿亿条记录。
(2)联合主键
关系数据库实际上还允许通过多个字段唯一标识记录,即两个或更多的字段都设置为主键,这种主键被称为联合主键。对于联合主键,允许一列有重复,只要不是所有主键列都重复即可:

id_num id_type other columns...
1 A ...
2 A ...
2 B ...
如果我们把上述表的`id_num`和`id_type`这两列作为联合主键,那么上面的3条记录都是允许的,因为没有两列主键组合起来是相同的。

没有必要的情况下,我们尽量不使用联合主键,因为它给关系表带来了复杂度的上升。
(2)外键
表之间如果要关联起来,则需要设置外键

你可能感兴趣的:(MySQL)