mysql数据库知识点总结

【】数据库:product

【】人员表(users)

id int 主键(自增)

uname varchar(20) 人员名称

pwd varchar(20)    密码

sex varchar(2) 性别

age int         年龄

【】类型表(type)

tid int 主键(自增)

tname varchar(20) 类型名称

【】产品表(product)

pid int 主键(自增)

pname varchar(20) 产品名称

tid int 类型

address varchar(50) 产地

price double 价格

desc varchar(100) 产品说明

【】订单表(orders)

oid   int 自增(主键)

otime datetime 订单时间

uid int 下单人员

pid   int 产品编号

count   int 数量

【】新增

1、把表中所有字段列出来一一赋值

insert into users(uid,uname,pwd,sex,age) values (30,'高圆圆','123','女',18);

2、插入表中某些字段

insert into users(uname,pwd) values ('小贪心','123');

3、将字段省略不写,后面按表中字段顺序一一赋值

insert into users values (null,'小心','123','男',9);

4、用一条语句插入多条数据

insert into users values (null,'王小小','123','男',9),

(null,'张小小','1233','男',9),(null,'孙小小','123','男',9);

【】修改

update users set sex='女',age=8 where uid=31;

【】删除

1、删除表中所有数据

delete from 表名;

2、删除表中某一条数据

delete from users where uid=29;

3、删除表中多条数据

delete from users where uid=33 or uid=34;

【】查询

1、查询表中所有信息

select * from product;(* 通配符,代表表中所有字段)

2、查询表中某些字段

select pname 商品名称,price as 价格,address 地址 from product;

as起别名,可写可不写)

3、带条件查询

select pname 商品名称,price as 价格,address 地址 from product where tid=7;

4、in(包含)

select pname 商品名称,price as 价格,address 地址 from product

where pid in (1,2,3,4);

5、between……and(在什么到什么之间)

select pname 商品名称,price as 价格,address 地址 from product

where price between 588 and 699;

6、not

select pname 商品名称,price as 价格,address 地址 from product

where address is not null;

7、like(模糊查询)

select pname 商品名称,price as 价格,address 地址 from product

where address like '%北京%';(%任意字符,_代表单个字符)

8、聚合函数

select max(price) from product; max 最大值)

select min(price) from product; min 最小值)

select sum(price) from product; sum 总和)

select avg(price) from product; avg 平均值)

select count(pwd) from users; count总行数)

9、分组

select max(price) from product group by tid;

10、having(分组之后再筛选,后面一般接聚合函数)

select max(price) from product group by tid having max(price)>500;

11、order by(排序)  

select * from product order by price asc;//升序 asc可以省略

select * from product order by price desc;//降序

12、多表连接查询

【】left join  左连接

左边表中数据全部显示,右边表中与左边表中对应的数据显示,右边多的不显示,左边 有右边没有,右边显示空

【】right join右连接

select * from product right join type on product.tid=type.tid;

右边表中数据全部显示,左边表中与右边表中对应的数据显示,左边多的不显示,右边 有左边没有,左边显示空

【】inner join内连接

select * from product inner join type on product.tid=type.tid;

查询两个表中全部对应的数据

13、去重复

select distinct sex from users;

14、分页

select pname,tname,address,price,`desc` from product inner join type on product.tid=type.tid limit 5(前5条)

select pname,tname,address,price,`desc` from product inner join type on product.tid=type.tid limit 2,5(从第三条开始查5条)

limit(页码-1)*每页显示条数,每页显示条数

【】where与having:

having:分组后再次筛选,通常与group by一起使用,后一般接聚合函数。如果having 后接表中存在的字段,则该字段必须在前面查询字段中。

where:筛选,只能接表中存在的字段。

【】分类:

事务控制语言(TCL):控制事务的提交和回滚

数据库控制语言(DCL):创建用户角色、为角色分配权限等相关操作

数据定义语言(DDL):定义数据库、定义表结构、修改结构等相关操作

数据操纵语言(DML):增加数据、删除数据等对记录相关操作

【】事务处理:TCL

原子性  操作要么都成功,要么都失败

一致性  数据库保持一致性状态

隔离性  一个事务进行时另一个事务不能干扰

永久性  事务一旦提交,对数据库的改变就是永久性的

【】关闭自动提交:conn.setAutoCommit(false);

【】提交:conn.commit();

【】回滚:conn.rollback();

【】JDBC:(Java Data Base Connectivity)Java数据库连接是一种用于执行SQL语 句的Java API,为多种关系数据库提供统一访问。

可以做三件事:与数据库建立接连、发送操纵数据库的语句、处理执行结果。

【】JDBC过程

1)静态加载驱动类。

2)获得连接。

3)获得语句对象(Statement、PreparedStatement)。

4)执行操作(sql语句)。

5)关闭语句对象、连接(查询操作关结果集),close()方法。

【】Statement与PreparedStatement的区别

Statement:语句对象:采用字符串拼接方式,容易引起sql注入,不安全,

多次执行时反复编译sql语句,效率低。

PreparedStatement:预编译语句对象:采用?占位,不会引起sql注入,安全,

在多次执行时只编译一次sql语句,效率高。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值