一、常用数据类型
类型说明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 后面跟的是连接数据库的密码(不能有空格)
2、查看数据库的信息
show databases;
记住得加上分好结尾,大部分的SQL命令都必须跟上;表示结束
3、查看数据库中表的信息
use 数据库名;
show tables;
4、显示数据表的结构(字段)
describe [数据库.]表名
或
desc [数据库.]表名
这里执行就像我们在Linux中使用绝对路径和相对路径一样,当你在所在表的库中时,可省略前面的数据库名(相对路径)。
当你需要对其他库中的表进行操作时,就需要加上库名(绝对路径)进行操作。
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(主键名)]);
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 [数据库名.]表名;
3、删除指定的数据库
drop database 数据库名; 删除名为**的库
四、DML管理表中的数据记录
1、插入新数据:insert
insert into 表名(字段1,字段2[,...]) values(字段1的值,字段2的值,...);
(字段中,可使用 password('密码') ,能够使用加密型密码)
也可以 直接 insert into 表名 values (字段1的值,字段2的值,...);
也可以 insert into 表名字 values( ),( ),( ); 同时添加多个数据
2、修改、更新原有数据:update
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
注意:插入数据和修改数据 字段要加 '' (英文的引号)
3、删除不需要的数据:delete
delete from 表名 [where 条件表达式]; 最好where后面 约束主键 (删除数据更精准)
五、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行
六、修改表名和表结构——alter
1、修改表名
alter table 旧表名 rename 新表名;
2、扩展表结构(增加字段)
alter table 表名 add address varchar(50) default '地址不详';
3、修改字段(列)名,添加唯一键
alter table 表名 change 旧列名 新列名 数据类型 [unique key];
#change 可修改字段名、数据类型、约束等所有项
唯一键:唯一,但可以为空(空值只能出现一次)
主键包含唯一键的部分属性
唯一键不能完全作为主键
unique key :唯一键 (特性:唯一,可以为空,但空值只允许出现一次)
primary key (主键): 唯一且非空;
4、删除字段、主键
alter table 表名 drop 字段名;
总结
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、删除字段、主键
总结
主键和唯一键
- 唯一键:唯一,但可以为空(空值只能出现一次)
- 主键:唯一,但不可为空值
- 主键包含唯一键的部分属性
- 唯一键不能完全作为主键