mysql自动给与int值_MYSQL---DBA---叁(SQL基础及元数据获取)

一. SQL简单介绍(1)类似linux中的shell,统一标准,能够应用于各种数据库(2)SQL标准:SQL-92或SQL-99(3)SQL验证:SQL_MODE约束二. SQL常用分类(1)DDL:数据定义语言(2)DCL: 数据控制语言(3)DML: 数据操作语言(4)DQL: 数据查询语言三. 数据类型(表的核心属性,字符集)作用:保证数据的准确性和标准性3.1 种类3.1.1 数值类型i...
摘要由CSDN通过智能技术生成

一. SQL简单介绍

(1)类似linux中的shell,统一标准,能够应用于各种数据库

(2)SQL标准:SQL-92或SQL-99

(3)SQL验证:SQL_MODE约束

二. SQL常用分类

(1)DDL:数据定义语言

(2)DCL: 数据控制语言

(3)DML: 数据操作语言

(4)DQL: 数据查询语言

三. 数据类型(表的核心属性,字符集)

作用:保证数据的准确性和标准性

3.1 种类

3.1.1 数值类型

f6413bf7f455

image.png

f6413bf7f455

image.png

3.1.2 字符类型

f6413bf7f455

image.png

f6413bf7f455

image.png

char(10)与varchar(10)的区别(括号内的数字是自己规定限制的字符长度):

char(10)类型:是定长类型,不管存储什么长度的数据,都立即分配你所指定的固定字符串长度的存储空间,若数据小于你所指定的,无法沾满则用空来填充

varchar(10)类型:可变长度类型,按需分配存储空间,在你指定的长度的字符串存储空间中只要不超过你所指定的长度,需要多少就分配多少(但每次都要计算所需要字符串长度的存储空间)在varchar类型中,除了存储字符串本身外,还会存储字符长度,对于<=255个字符的会额外占用1个字节存储长度;>255个字符的会额外占用2个字节长度存储字符长度

注意:对于char(10)与varchar(10)的数据类型,括号中表示的是最多的字符个数

基础字符:a(字母)----1字节 1(数字)----1字节 {(符号)----1字节

中文:张---gbk字符集---2字节 张---utf8---3字节 张---utf8mb4---4字节

3.1.3 时间类型

f6413bf7f455

image.png

f6413bf7f455

image.png

3.1.4 二进制类型

一般不使用,neo4j:图片,视频的存储应用

f6413bf7f455

image.png

3.1.5 枚举类型

enum(‘bj’,‘sh’,‘tj’,...)

对应着编号1,2,3,...

四. 表与列的属性

4.1 列属性

约束作用(一般建表时添加)

(1)not null:非空约束

- 列值不能为空,也是表设计的规范,尽可能将所有的列设置为非空。若无法保证,可以设置默认值,可以设置默认值为0。

(2)unique key:唯一键

- 列值不能重复,手机号,身份证号,银行卡号种类的列设定为UK

(3)primary key:主键约束

- 设置为主键的列,此列的值必须非空且唯一,主键在一个表中只能有一个,但是可以有多个列一起构成,一般会在表中设置自增长的id列。

(4)unsigned:无符号

- 针对数字列,非负数。一般是在int或tinyint后添加的附加属性

其他属性

(1)key:属性

- 可以在某列上建立索引,来优化查询,一般是根据需要后添加

(2)default:默认值

- 列中,没有录入值时,会自动使用default的值填充

(3)auto_increment:自增长

- 针对数字列,顺序的自动填充数据(默认是从1开始,将来可以设定起始点和偏移量)

(4)comment:注释信息

4.2 表属性

存储引擎:

InnoDB(默认的)

字符集和排序规则:

utf8

utf8mb4

五. 字符集及校对规则

5.1 字符集(charset)

show charset;(mysql中的查看方式)

gbk:中文字符占2个字节

utf8(mb3):中文字符占3个字节

utf8mb4:中文字符占4个字节

create database xs charset utf8mb4;

create table t1 ()charset utf8mb4;

5.2 校对/排序规则(collation)

5.2.1 举例

- 举例数据:Asd, ads, ass, bca, cda, Cdd

- 不区分大小写:ads, Asd, ass, bca, cda, Cdd

- 区分大小写:Asd, Cdd, ads, ass, bca, cda

5.2.2 utf8mb4字符集

show collaction(在mysql中查看方式)

(1)utf8mb4_general_ci: 通过校对默认值,不区分大小写

(2)utf8mb4_bin:区分大小写

六. DDL数据定义语言

6.1 库的定义

6.1.1 标准建库语句

mysql> create database db charset utf8mb4;(创建)

mysql> show create database xuexiao;(查看)

6.1.2 创建数据库方式

create database school;

create schema sch;

show charset;

show collation;

CREATE DATABASE test CHARSET utf8;

create database xyz charset utf8mb4 collate utf8mb4_bin;

6.1.3 建库规范

1.库名不能有大写字母

2.建库要加字符集

3.库名不能有数字开头

库名要和业务相关

6.1.4 删除库

drop database oldboy;(生产中禁用)

6.1.5 修改库(一般就是修改字符集)

SHOW CREATE DATABASE school;

ALTER DATABASE school CHARSET utf8;

6.1.6 查询库

show databases;

show create database oldboy;

6.2 表的定义

6.2.1 创建表

模板

create table stu(</

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值