数据库知识点和一些命令以及使用步骤

 一、基本命令:

(1)连接本地数据库服务:mysql -u root -p

(2)连接其它电脑上的数据库服务:mysql -h ip地址 -u root -p

(3)在连接数据库服务时直接选择库:mysql -D 库名 -u root -p

(4)退出数据库服务:exit 或 quit 或 \q

二、使用步骤:

1、链接数据库服务

2、创建一个数据库—>选择库

3、设计表(表中有哪些字段、字段用什么数据类型表示、字段需要添加什么约束条件)

4、多张表需要考虑表与表之间的关系-----外健—》主键

5、数据的增删改查

三:库 的知识点

库(建库,查看,修改-字符编码,删除)—>表(建表,查看,修改-表名、字段,删除)—>数据(插入、修改、删除、查询)

DDL:库、表的操作(create、drop、alter、show)

DML:数据插入(insert)、数据修改(update)、数据删除(delete)

DQL:数据查询(select)

四、库的一些命令:

1、创建库:create database 库名;

          create database 库名 character set 字符集;

          create database 库名 charset 字符集;

2、查看库:

(1)查看所有库:show databases;

(2)查看当前所使用的库:select database();

(3)查看当前所使用的库的信息:status; 或 \s

(4)查看建库时的语句:show create database 库名;

3、选择库(使用库、进入库):use 库名;

4、修改库(修改库的字符编码):alter database 库名 character set 字符集;

                            alter database 库名 charset 字符集;

5、删除库:drop database 库名;

6、查看数据库的版本:select version();

7、查看当前系统的时间:select now();

五、数据类型:

1、数值类型(整数、浮点数):分为 有符号 和 无符号(unsigned)

2、字符串类型:char-定长字符串 varchar-变长字符串 enum-枚举

3、时间日期类型:date-年月日 time-时分秒 year-年 datetime-年月日时分秒

六、约束:

1、主键primary key:唯一与非空的结合

2、非空not null:数据不能为空

3、唯一unique:数据不能重复

4、默认default:默认值

5、自增auto_increment:数据不需要填写,插入一条数据的时候就自动递增1

6、外键foreign key:两个以上的表建立关联的时候使用

七、表的知识点

表:(在操作表之前一定要先选择一个库)(主外键:一个表里的外健,一定是另一个表里的主键)

1、建表:

create table 表名(

        字段名1 数据类型 [约束],

字段名2 数据类型 [约束],

......

最后的字段名 数据类型 [约束]

);

2、查看表:

(1)查看某一个库里所有的表:show tables;

(2)查看建表时的语句:show create table 表名;

(3)查看表结构(表里有哪些字段):desc 表名;

3、修改表名:rename table 原表名 to 新表名;

4、修改表的字段:

(1)添加表里的字段:alter table 表名 add 字段名 数据类型 [约束];

(2)修改表里的字段:alter table 表名 change 原字段名 新字段名 数据类型 [约束];-----可以改变字段的名字、数据类型、约束

                   alter table 表名 modify 字段名 数据类型 [约束];-----可以改变字段的数据类型、约束、位置

                   alter table 表名 modify 需要移动的字段名 数据类型 first;-----将字段的位置修改到第一列

   alter table 表名 modify 需要移动的字段名 数据类型 after 参考的字段名;-----将字段的位置修改到某个字段之后

(3)删除表里的字段:alter table 表名 drop 字段名;

5、删除表:drop table 表名;-----删除后表就不存在了

八、数据:

1、插入数据:insert into 表名[(字段名)] values(字段值1,字段值2.......)[,(字段值1,字段值2.......)]

2、修改数据:update 表名 set 要修改的字段名=修改后的值 [where 修改的条件];

3、删除数据:

(1)delete from 表名;-----把表里数据全部删除,但表还存在

     delete from 表名 where 删除的条件;-----根据条件来删除表里的数据

(2)truncate table 表名;-------清空表里的数据,但表仍然存在,而且不能加条件

九、数据查询:

九(1)

基本查询:

(1)查询全部字段的全部数据:select * from 表名;

(2)查询部分字段的全部数据:select 字段名1,字段名2,......from 表名;

(3)根据一个条件查询数据:select * from 表名 where 条件;

(4)根据多个条件查询数据:条件与条件之间用and、or、in、between...and...

(5)模糊查询:select * from 表名 where 字段名 like '值';------%  _

(6)去重:select distinct 字段名 from 表名;

(7)按照单个字段排序:select * from 表名 order by 字段名 asc/desc;(asc升序-默认,desc降序)

     按照多个字段排序:select * from 表名 order by 字段名1 asc/desc,字段名2 asc/desc;

     有条件的排序:select * from 表名 where 条件 order by 字段名 asc/desc;

(8)限制查询结果的数量:limit

九(2)

连接查询:(涉及到两个表以上,在查询的时候至少要有一个必备的条件,这个必备的条件就是两个表共有的那个字段相等,而且这个字段一定在一个表里是主任,在另一个表里是外健)

1、内连接

(1)显示内连接:select 字段 from 表名1 inner join 表名2 on 两个表连接的条件 [where 其他查询的条件];

(2)隐式内连接:select 字段 from 表名1,表名2 where 两个表连接的条件 [and 其他查询的条件];

2、外连接

(1)左外连接:select 字段 from 表名1 left join 表名2 on 两个表连接的条件 [where 其他查询的条件];

(2)右外连接:select 字段 from 表名1 right join 表名2 on 两个表连接的条件 [where 其他查询的条件];

九(3)

聚合函数查询:

(1)count()-计数 sum()-求和 max()-最大值 min()-最小值 avg()-平均值

(2)select 聚合函数名(字段名) from 表名 [where 条件];

(3)select 分组字段名,聚合函数名(字段名) from 表名 group by 分组的字段名;

九(4)

子查询:(查询嵌套查询)

(1)select * from 表名 where 字段名=(select 字段名 from 表名);-----子查询的结果只有一个值

(2)select * from 表名 where 字段名=any(select 字段名 from 表名);-----子查询的结果只多个值,等于其中的任意一个值

(3)select * from 表名 where 字段名<all(select 字段名 from 表名);-----子查询的结果只多个值,小于所有值

(4)select * from 表名 where exists (select 字段名 from 表名);-----子查询如果有查询的结果,外查询就执行

  • 31
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值