数据库

数据库

  1. 数据库(Database,简称DB)

    ​ 1.1 概念: 长期存放在计算机内,有组织,可共享的大量数据集合,是一个数据的仓库

    ​ 作用: 保存管理数据

  2. 类型:

    ​ 2.1 关系型数据库(SQL):MySQL、Oracle、SQL Sever、SQLite、DB2

    ​ 非关系型数据库(NOSQL):Redis、MongoDB

  3. DBMS:

    ​ 数据库管理系统(Database Management System):数据管理软件,科学组织和存储数 据、高效的获取和维护数据。
    在这里插入图片描述

MySQL

  1. 概念 :是现在流行的开源,免费的数据库

  2. 特点:免费、开源数据库

    ​ 小巧、功能齐全

    ​ 使用便捷

    ​ 可运行于Windows或Linux操作系统

    ​ 可适用于中小型甚至大型网站应用

  3. 运行机制
    在这里插入图片描述

  4. 结构化查询语句SQL

    ​ 4.1 分类:

    ​ DDL(数据定义语言):定义和管理数据对象,如数据库,数据表等

    ​ 命令:create、drop、alter

    ​ DML(数据操作语言):用于操作数据库对象中所包含的数据

    ​ 命令:insert、update、delete

    ​ DQL(数据查询语言):用于查询数据库数据

    ​ 命令:select

    ​ DCL(数据控制语言):用来管理数据库的语言,包括管理权限及数据更改

    ​ 命令:crant、commit、rollback

  5. 命令行操作数据库

创建数据库 :create database if not exists  数据库名;

删除数据库: drop database if exists 数据库名;

查看数据库: show databases;

使用数据库:use 数据库名;	 
  1. 创建数据表
create  table  if  not exists `表名` (
`字段名1` 列类型 属性 索引 注释,
`字段名2` 列类型 属性 索引 注释,
  ......
`字段名n` 列类型 属性 索引 注释,
)表类型 表字符集 注释 ;
-- 反引号用于区别MySQL保留字与普通字符而引入的
  1. 数据值和列类型

    ​ 列类型规定数据库中该列存放的数据类型

    ​ 分为 : 数值类型

    ​ 字符串类型

    ​ 日期和时间型数值类型

    ​ NULL值

  2. 数值类型:

类型说明取值范围存储需求
tinyint非常小的数据有符值: -27 ~ 27-1
无符号值:0 ~ 28-11字节
smallint较小的数据有符值: -215 ~ 215-1
无符号值: 0 ~ 216-12字节
mediumint中等大小的数据有符值: -223 ~ 223-1
无符号值: 0 ~ 224-13字节
int标准整数有符值: -231 ~ 231-1
无符号值:0 ~ 232-14字节
bigint较大的整数有符值: -263 ~263-1
无符号值:0 ~264-18字节
float单精度浮点数±1.1754351e -384字节
double双精度浮点数±2.2250738585072014e -3088字节
decimal字符串形式的浮点数decimal(m, d)m个字节
  1. 字符串类型
类型说明最大长度
char[(M)]固定长字符串,检索快但费空间, 0 <= M <= 255M字符
varchar[(M)]可变字符串0 <= M <= 65535**变长度
tinytext微型文本串28–1字节
text文本串216–1字节
  1. 日期和时间型数值类型
类型说明取值范围
DATEYYYY-MM-DD,日期格式1000-01-01~ 9999-12-31
TIMEHh:mm:ss,时间格式-838:59:59~838:59:5
DATETIMEYY-MM-DD hh:mm:ss1000-01-01 00:00:00 至9999-12-31 23:59:59
TIMESTAMPYYYYMMDDhhmmss格式表示的时间戳197010101000000 ~2037年的某个时刻
YEARYYYY格式的年份值1901~2155
  1. NULL值

    ​ 理解为“没有值”或未知值

    ​ 不要用NUll进行算术运算,结果仍为NULL

  2. 数据字段属性

​ unsigned:无符号的,声明该数据列不允许负数

​ zerofill:0填充的,不足位数的用0填充,如int(3),5则为005

​ auto_increment:自动增长的,每添加一条数据,自动会在上一个记录数上加1,通常用于设置主 键且为整数类型,可定义起始值和步长

​ NULL和 NOT NULL: 默认为NULL,即没有插入该列的数值;如果设置not null,则该列必须有 值

​ default:用于设置默认值

  1. 使用语句新建Student表
CREATE  TABLE student(
StudentNo int(4) not null primary key auto_increment comment '学生编号',
studentName varchar(20) not null comment '学生姓名',
sex varchar(10) not null comment '性别',
gradeId int(11) not null comment '年级编号',
phone varchar(50) comment '手机号',
address varchar(255) comment '住址'
)comment ='学生信息表',charset=utf8;

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值