python mysql library popular_python之mysql入门详解(四)

下面来介绍事务和视图。

事务与前面介绍的有所不同的是,它是对表进行操作,不是简单的查询(不动表的数据)

一,事务四大特性

原子性:事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。

一致性:几个并行执行的事务,其执行的结果必须与按某一顺序串执行的结果相一致。

隔离性:事务的执行不受其他事务的干扰,系统必须执行的中间结果对其他事务必须是透明的。

持久性:对于任意已提交的事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。

二,使用事务的情景:insert into/ update /delete

show create table students; #查询表的创建语句 ENGINE=InnoDB 数据类型是innodb

是支持事务的。

Begin; #开始操作事务

。。。

Commit; #提交编辑的事务,不提交不会执行mysql命令

Rollback; #回滚(撤销)

事务主要是运用在与python交互的时候,就是用python直接执行mysql命令,后面会用代码详解。

索引

创建缩影主要是用来提高查询的速度,相当于告诉数据库我要查询什么,而不是每个字段都遍历。

查看索引

Show index from 表名

创建索引

Create index 索引名 on 表名(字段(长度))

查看执行的时间

开启运行时间的监测

Set profiling=1;#开启

执行查询语句

Select * from areas where title=’大同市’; #areas已有的表名

查看执行的时间

Show Profiles;

视图

视图是将很复杂的数据库做一个精简,把需要的数据提取出来,单独创建一个“表”,方便查询,所以视图还是用来查询的。

mysql> create view v_stu_sub_sco as #将as后面的查询语句赋与v_stu_sub_sco

select students.*,subject.title,scores.score[批注] from scores

inner join students on scores.stuid=students.id

inner join subject on scores.subid=subject.id;

[批注]代表查询students的所有字段,查询subject表的标题字段,查询scores表的分数字段。

如果只想查学生名字,对应科目和分数,就可以这样写select 语句了。

Select name,title,score from v_stu_sub_sco; ##对于上面有的字段都可以进行相应的查询。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值