一、常用数据类型

类型说明int整型(定义整数类型数据)float单精度浮点,4字节32位,准确到小数点后六位double双精度浮点,8字节64位char固定长度的字符类型,定义字符类数据varchar可变长度的字符类型text文本image图片decimal (5,2)5个有效长度数字,小数点后面有2位,指定长度数组

  • char 如果存入数据的实际长度比指定长度要小,会补空格至指定长度;如果存入的数据的实际长度大于指定长度,低版本会被截取,高版本会报错。
  •  char 为固定长度值,不足的以空格替代,而 varchar 为可变值,最大为设置的长度值,当不足时,即为当前长度大小。
    例如:定义 char(10) 和 varchar(10) ,当输入123时,char 的长度就为10,虽然不足,但是不足的部分使用了空格进行补充;而 varchar 的长度就为 3 。
  •  decimal (5,2),当输入的数值后的小数位小于两位时,会拿0补全两位;当超过两位时,小数点后第三位是自动进行的四舍五入进第二位 

二、查看数据库结构

1、进入数据库

mysql -uroot -p123456
-u 连接数据库的用户名
-p 后面跟的是连接数据库的密码(不能有空格)

 

mysql char补 mysqlchar不足会补空格嘛_字段

2、查看数据库的信息

show databases;
记住得加上分好结尾,大部分的SQL命令都必须跟上;表示结束

mysql char补 mysqlchar不足会补空格嘛_mysql char补_02

3、查看数据库中表的信息

use 数据库名;
show tables;

mysql char补 mysqlchar不足会补空格嘛_表名_03

 4、显示数据表的结构(字段)

describe [数据库.]表名   
或
desc [数据库.]表名 

这里执行就像我们在Linux中使用绝对路径和相对路径一样,当你在所在表的库中时,可省略前面的数据库名(相对路径)。
当你需要对其他库中的表进行操作时,就需要加上库名(绝对路径)进行操作。

mysql char补 mysqlchar不足会补空格嘛_字段_04

 field:字段;

type:数据类型;

null:是否允许为空;

key:主键;primary key:主键一般选择没有重复并且不为空值的字段;

defalt:默认值;

extra:扩展属性;

三、SQL语句概述

1、SQL语言

  • Structured Query Language 的缩写,即结构化查询语言
  •  关系型数据库的标准语言
  • 包括数据查询、数据更新、访问控制、对象管理等功能

2、SQL分类 

DDL

数据定义语言,用于创建数据库对象,如库、表、索引等

DML

数据操纵语言,用于对表中的数据进行管理

DQL

数据查询语言,用于从数据表中查找符合条件的数据记录

DCL

数据控制语言,用于设置或者更改数据库用户或角色权限

三、DDL

1、创建数据库和表

创建数据库
create database 数据库名; 

创建数据表
create table 表名(字段1 数据类型,字段2 数据类型,....,[primary key(主键名)]);

mysql char补 mysqlchar不足会补空格嘛_mysql char补_05

 

mysql char补 mysqlchar不足会补空格嘛_mysql char补_06

create database test; 创建 名为test的ku
create  table mingdan(id int(10) not null,name varchar(40) not null,age int (3) not null,score decimal(5,2) default '0',primary key (id));
创建名为 mingdan的表 字段 和 数据类型 
id 是主键 是没有重复并且 不能为空值

2、删除指定的数据表 

use 数据库名;
drop table 表名;
或
drop table [数据库名.]表名;

 

mysql char补 mysqlchar不足会补空格嘛_mysql char补_07

 3、删除指定的数据库

drop database 数据库名;  删除名为**的库

mysql char补 mysqlchar不足会补空格嘛_表名_08

四、DML管理表中的数据记录

1、插入新数据:insert

insert into 表名(字段1,字段2[,...]) values(字段1的值,字段2的值,...);
(字段中,可使用 password('密码') ,能够使用加密型密码)
也可以 直接 insert into 表名 values (字段1的值,字段2的值,...);
也可以 insert into 表名字 values(  ),(  ),(  ); 同时添加多个数据

 

mysql char补 mysqlchar不足会补空格嘛_mysql char补_09

 

mysql char补 mysqlchar不足会补空格嘛_表名_10

 2、修改、更新原有数据:update

update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];

mysql char补 mysqlchar不足会补空格嘛_数据库_11

 注意:插入数据和修改数据 字段要加 '' (英文的引号)

3、删除不需要的数据:delete 

delete from 表名 [where 条件表达式]; 最好where后面 约束主键 (删除数据更精准)

mysql char补 mysqlchar不足会补空格嘛_表名_12

 五、DQL 查询数据记录——select

select 字段名1,字段名2[,...] from 表名 [where 条件表达式];当数据过多 直接选择字段更加节省时间和资源 速度更快

小技巧:
select * from 表名;           #显示全部
select 字段1,字段2 from 表名;  #显示字段1和字段2  
select 字段1 from 表名\G;      #以列表形式竖向显示
select * from 表名 info limit 2;   #只显示头2行
select * from 表名 info limit 2,3; #显示第2行后的前3行

mysql char补 mysqlchar不足会补空格嘛_字段_13

 

mysql char补 mysqlchar不足会补空格嘛_mysql char补_14

 

mysql char补 mysqlchar不足会补空格嘛_表名_15

六、修改表名和表结构——alter

1、修改表名

alter table 旧表名 rename 新表名;

mysql char补 mysqlchar不足会补空格嘛_数据库_16

 

mysql char补 mysqlchar不足会补空格嘛_mysql char补_17

 2、扩展表结构(增加字段)

alter table 表名 add address varchar(50) default '地址不详';

mysql char补 mysqlchar不足会补空格嘛_数据库_18

 3、修改字段(列)名,添加唯一键

alter table 表名 change 旧列名 新列名 数据类型 [unique key];

#change 可修改字段名、数据类型、约束等所有项

唯一键:唯一,但可以为空(空值只能出现一次)

主键包含唯一键的部分属性
唯一键不能完全作为主键
unique key :唯一键 (特性:唯一,可以为空,但空值只允许出现一次)
primary key (主键): 唯一且非空;

 

mysql char补 mysqlchar不足会补空格嘛_mysql_19

 4、删除字段、主键

alter table 表名 drop 字段名;

 

mysql char补 mysqlchar不足会补空格嘛_表名_20

总结

1、常见类型:int、char、varchar、decimal 

2、基础常见操作

①、DDL负责数据结构定义与数据库对象定义 

创建库和表、删除库和表、修改表名、扩展表结构(增加字段)、修改字段(列)名,添加唯一键、删除字段、主键

②、DML管理表中数据

插入新数据、更新数据、删除数据

③、DQL

查询数据记录

目录

一、常用数据类型

二、查看数据库结构

1、进入数据库

2、查看数据库的信息

3、查看数据库中表的信息

 4、显示数据表的结构(字段)

三、SQL语句概述

1、SQL语言

2、SQL分类 

三、DDL

1、创建数据库和表

2、删除指定的数据表 

 3、删除指定的数据库

四、DML管理表中的数据记录

1、插入新数据:insert

四、DML管理表中的数据记录

1、插入新数据insert

 2、修改、更新原有数据:update

3、删除不需要的数据:delete 

 五、DQL 查询数据记录——select

六、修改表名和表结构——alter

1、修改表名

 2、扩展表结构(增加字段)

 3、修改字段(列)名,添加唯一键

 4、删除字段、主键


总结


主键和唯一键

  • 唯一键:唯一,但可以为空(空值只能出现一次)
  • 主键:唯一,但不可为空值
  • 主键包含唯一键的部分属性
  • 唯一键不能完全作为主键