事务定义

就是将一组SQL语句放在同一批次内去执行

如果一个sql语句出错,则改批次内的所有sql都将被取消执行

(1)原子性

一个事务要么全部提交成功,要么全部失败回滚,不能只执行其中的一部分操作,这就是事务的原子性

(2)一致性

在事务开始之前和事务结束以后,数据库的完整性没有被破坏。[例如两账户的和不变]

(3)隔离性

数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。

(4)持久性

事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。

事物的常用命令:

  1. 开始事物:begin或者start transaction
  2. 提交事务:commit
  3. 回滚事物 rollback                             

流程是:先关闭自动提交(set  autocommit=0)开启事物(begin)运行代码 手动提交(commit)就可以同时进行多项操作    结束需要开启自动提交(set autocommit=1)否则,之后的操作都不会在表中显示,必须用手动提交才行  仅限于引擎类型为InnoDB,MyIsam不行

为什么需要视图

1.不同的人员关注不同的数据

2.保证信息的安全性

视图定义

  1. 视图是一张虚拟表(不是真实存在的)
  2. 一张表创建多个视图

        3.视图不存放数据,但是展示数据

视图的作用

1.筛选表中的行

2.防止未经许可的用户访问敏感数据

3.降低数据库的复杂程度

4.将多个物理数据库抽象为一个逻辑数据库

创建视图

create view v_shitu as select name,pwd from shitu;//创建视图

SELECT*from v_shitu;//查询视图

DROP VIEW v_shitu ;//删除视图

UPDATE v_shitu set name='xxxx';//修改视图:视图中的数据可以影响到原表中的数据,即使视图是虚拟的也可以

查询所有表和视图 show tables

查询视图 show table status where comment ='view'

索引

1.索引作用:

大大提高数据库的检索速度

改善数据库性能

  1. 拓展:索引可以提高查询的效率,但是会减低增删改的效率
  2. 索引的种类:普通索引 主键索引 全文索引 组合索引 全文索引
  3. alter table 表名 add primary key(主键索引的属性名)
  4. alter table 表名 add unique(唯一索引的属性名)
  5. alter table 表名 add index(普通索引的属性名)
  6. Alter table 表名add index(属性名,属性名)创建组合索引
  7. show index from 表名(查询所有的索引)
  8. drop index 索引的属性名 on 表名(删除索引)

alter table 表名 drop primary key(删除主键索引。

 

mysql拓展的更多相关文章

  1. MySQL拓展操作

    MySQL除了基本的增删该查功能,还有以下拓展功能: create table t1( id int ...., num int, xx int, unique 唯一索引名称 (列名,列名), con ...

  2. MySQL拓展 视图,触发器,事务,存储过程,内置函数,流程控制,索引,慢查询优化,数据库三大设计范式

    视图: 1.什么是视图 视图就是通过查询得到一张虚拟表,然后保存下来,下次直接使用即可 2.为什么要用视图 如果要频繁使用一张虚拟表,可以不用重复查询 3.如何使用视图 create view tea ...

  3. 前端学PHP之mysql扩展函数

    × 目录 [1]连接数据库 [2]使用数据库 [3]执行SQL查询[4]操作结果集[5]关闭连接 前面的话 mysql由于其体积小.速度快.总体拥有成本低,尤其是具有开放源码这一特点,许多中小型网站为 ...

  4. apache+mysql+php环境的手动搭建

    一.搭建Apache Http Server 官方下载地址:http://www.apachehaus.com/cgi-bin/download.plx 搭建环境:win10 64位 WIN10 64 ...

  5. PHP API中,MYSQL与MYSQLI的持久连接区别

    转载自:http://www.cnxct.com/some-differences-between-mysql-and-mysqli-of-persistent-connection/ 很久很久以前, ...

  6. 页游手游服务器(二)c支持mysql

    上一篇说的是liua的net拓展,这一篇说lua的sql拓展,准确说是mysql拓展,这里推荐下postgre,比mysql好用,支持数组,各种好,不过腾讯平台不支持,所以你的公司要和腾讯合作,掂量下 ...

  7. 2-22-实现jsp通过tomcat连接mysql

    所有软件的版本如下: MySQL-Connector-Java: mysql-connector-java-5.1.36 Tomcat: apache-tomcat-8.0.26 JDK: jdk-8 ...

  8. 记录Python学习中的几个小问题

    记录Python学习中的几个小问题,和C#\JAVA的习惯都不太一样. 1.Django模板中比较两个值是否相等 错误的做法 <option value="{{group.id}}&q ...

  9. guacamole 0.8.3 项目部署 桌面虚拟化

    Guacamole是一个基于HTML5的虚拟桌面应用程序,其中包含多个组件,由各组件共同构成Guacamole---一个完整的虚拟桌面解决方案,不需要任何插件,只要浏览器支持HTML5就可以实现,而且 ...

  10. 什么是php?以及mysqlnd与libmysqlclient

    今天想彻底搞清楚php与mysql的关系,于是在php官方网站(http://php.net/manual/en/mysqli.installation.php) 看了一下mysqli,mysql.感 ...

随机推荐

  1. 2020-12-01:java中,什么是安全点和安全区域?

    福哥答案2020-12-04: 安全点用户线程暂停,GC 线程要开始工作,但是要确保用户线程暂停的这行字节码指令是不会导致引用关系的变化.所以 JVM 会在字节码指令中,选一些指令,作为"安 ...

  2. 2021-08-31:去除重复字母。给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置)。力扣316。

    2021-08-31:去除重复字母.给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次.需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置).力扣316. 福大大 答案 ...

  3. query查询原生sql

    print(str(Teahcer.objects.filter(fans__gte=500).order_by('name').query)

  4. Apache Hudi 1.x 版本重磅功能展望与讨论

    Apache Hudi 社区正在对Apache Hudi 1.x版本功能进行讨论,欢迎感兴趣同学参与讨论,PR链接:https://github.com/apache/hudi/pull/8679/f ...

  5. JavaWeb编程面试题——Spring Framework

    引言 面试题==知识点,这里所记录的面试题并不针对于面试者,而是将这些面试题作为技能知识点来看待.不以刷题进大厂为目的,而是以学习为目的.这里的知识点会持续更新,目录也会随时进行调整. 关注公众号:编 ...

  6. Linux安装MongoDB 4.0.3

    Linux安装MongoDB 4.0.3   1.准备 CentOS下安装MongoDB 官网提供windows.Linux.OSX系统环境下的安装包,这里主要是记录一下在Linux下的安装.首先到官 ...

  7. 【Netty】03-进阶

    三. Netty 进阶 1. 粘包与半包 1.1 粘包现象 服务端代码 public class HelloWorldServer { static final Logger log = Logger ...

  8. 前端Vue非常简单实用商品分类展示组件 侧边商品分类组件

    前端vue非常简单实用商品分类展示组件 侧边商品分类组件 , 下载完整代码请访问uni-app插件市场址:https://ext.dcloud.net.cn/plugin?id=13084 效果图如下 ...

  9. 使用python发送sip协议的OPTIONS

    环境:Windows10_x64  Python版本 :3.9.2   sip协议提供了OPTIONS请求方法可用于探测对端状态,今天记录下Windows10环境下使用python3.9简单实现sip ...

  10. 使@schedule支持多线程的配置类

    package com.longshine.goverquartz.core.config;import org.springframework.boot.autoconfigure.batch.Ba ...