-
MySQL创建普通用户
所属栏目:[MySql教程] 日期:2020-12-12 热度:116
h3 id="创建普通用户"创建普通用户 在创建用户之前,通过SELECT语句,查看mysql.user表中有哪些用户 查询结果 可以看出,user表中只有一个root用户信息 由于,MySQL中存储的数据较多,通常一个root用户,是无法管理这些数据的,因此,需要创建多个普通用户,[详细]
-
MySQL删除普通用户
所属栏目:[MySql教程] 日期:2020-12-12 热度:179
MySQL中,通常会创建多个普通用户来管理数据库 当某些用户不再需要时,可以将其删除 h3 id="drop-user语句"DROP USER语句 使用DROP USER语句删除用户 DROP USER,只需要在语句后面指定要删除的用户即可 h3 id="语法格式"语法格式 DROP USER ‘username’@’h[详细]
-
MySQL创建视图的语法格式
所属栏目:[MySql教程] 日期:2020-12-12 热度:76
视图,具有简化查询语句、安全性和保证逻辑数据独立性等作用 创建视图的语法格式 视图中,包含SELECT查询的结果,因此,视图的创建基于SELECT语句,和已经存在的数据表,视图可以建立在一张表上,也可以建立在多张表上 MySQL中,使用CREATE VIEW语句,创建视[详细]
-
MySQL存储过程的使用
所属栏目:[MySql教程] 日期:2020-12-12 热度:111
h3 id="存储过程的使用"存储过程的使用 创建一个stu表 在数据库chapter06中,创建表stu,并向表中添加数据 使用DESC命令,查看stu表结构 使用SELECT * FROM stu查看表数据 h3 id="创建存储过程"创建存储过程 创建一个存储过程addcount,能够获取表stu中的记[详细]
-
MySQL视图概述
所属栏目:[MySql教程] 日期:2020-12-12 热度:140
操作数据表,都是真实存在的一些表 数据库中,还有一种虚拟表,同真实表一样,都包含一系列带有名称和列的数据,这些表称为视图 h3 id="视图"视图 是从一个或多个表中导出来的表 是一种虚拟存在的表,并且,表的结构和数据都依赖于基本表 通过视图,不仅可以[详细]
-
MySQL删除存储过程
所属栏目:[MySql教程] 日期:2020-12-12 热度:126
当数据库存储废弃的存储过程时,需要删除 MySQL中,使用DROP语句删除存储过程 语法格式 DROP {PROCEDURE | FUNCTION} [IF EXISTS] sp_name h3 id="参数说明"参数说明 Sp_name,为删除的存储过程名称 IF EXISTS,表示如果程序不存在,可以避免发生错误,产生[详细]
-
MySQL修改存储过程
所属栏目:[MySql教程] 日期:2020-12-12 热度:71
在实际开发中,业务需求修改的情况时有发生,这样,不可避免的需要修改存储过程的特征 MySQL中,使用ALTER语句修改存储过程的特性 语法格式 ALTER {PROCEDURE | FUNCTION} sp_name [characteristic……] h3 id="参数说明"参数说明 Sp_name,表示存储过程或函[详细]
-
MySQL查看存储过程
所属栏目:[MySql教程] 日期:2020-12-12 热度:139
MySQL存储了,存储过程的状态信息 可以使用SHOW STATUS语句,或SHOW CREATE语句来查看,也可以直接从系统的information_schema数据库中查询 h3 id="show-status语句"SHOW STATUS语句 SHOW STATUS语句,查看存储过程的状态 h3 id="语法格式"语法格式 SHOW {PR[详细]
-
MySQL调用存储过程
所属栏目:[MySql教程] 日期:2020-12-12 热度:96
使用存储过程,可以使程序执行效率更高,安全性更好,增强程序的可重用性和维护性 h3 id="调用存储过程"调用存储过程 存储过程有多种调用方法 存储过程必须使用CALL语句调用,并且,存储过程和数据库相关,如果,要执行其他数据库中的存储过程,需要指定数据[详细]
-
MySQL光标的使用
所属栏目:[MySql教程] 日期:2020-12-12 热度:194
在编写存储过程时,查询可能返回多条记录,如果,数据量非常大,则需要使用光标来逐条读取查询结果集中的记录 光标,是一种用于轻松处理多行数据的机制 h3 id="光标的声明"光标的声明 使用光标处理结果集中的数据,需要先声明光标 光标,必须声明在声明变量[详细]
-
MySQL流程控制的使用
所属栏目:[MySql教程] 日期:2020-12-12 热度:91
流程控制语句,用于将多个SQL语句,划分或组成成符合业务逻辑的代码块 h3 id="流程控制语句"流程控制语句 包括,IF语句、CASE语句、LOOP语句、WHILE语句、LEAVE语句、ITERATE语句、REPEAT语句和WHILE语句 每个流程中,可能包含一个单独语句,也可以是使用BEG[详细]
-
MySQL定义处理程序
所属栏目:[MySql教程] 日期:2020-12-12 热度:198
定义完条件以后,需要定义针对此条件的处理程序 MySQL中,使用DECLARE语句定义处理程序 h3 id="语法格式"语法格式 DECLARE handler_type HANDLER FOR condition_value [,……] sp_statement Handler_type: CONTINUE | EXIT | UNDO Condition_value: | condit[详细]
-
MySQL变量的使用
所属栏目:[MySql教程] 日期:2020-12-12 热度:104
在编写存储过程中,有时需要使用变量,保存数据处理过程中的值 MySQL中,变量可以在子程序中,声明并使用,作用范围在BEGIN……END程序中 h3 id="定义变量"定义变量 在存储过程中,使用DECLARE语句,定义变量 语法格式 DECLARE var_name[,varname]……date_t[详细]
-
MySQL定义条件
所属栏目:[MySql教程] 日期:2020-12-12 热度:125
在开发过程中,经常需要对特定的条件进行处理,这些条件可以联系到错误以及子程序中的一般流程控制 h3 id="定义条件"定义条件 是指事先定义,程序执行过程中遇到的问题 处理程序定义了在遇到这些问题时,应当采取的处理方式,并且,保证存储过程在遇到警告或[详细]
-
MySQL创建存储过程
所属栏目:[MySql教程] 日期:2020-12-12 热度:148
在开发过程中,经常会遇到重复使用某一个功能的情况,为此,MySQL引入了存储过程 存储过程 就是一条或多条SQL语句的集合,当对数据库进行一系列复杂操作时,存储过程可以将这些复杂操纵,封装成一个代码块,以便重复使用,大大减少数据库开发人员的工作量 h3[详细]
-
MySQL事务的可串行化
所属栏目:[MySql教程] 日期:2020-12-12 热度:96
可串行化——SERIALIZABLE 事务的最高级别,在每个读的数据行上,加上锁,使之不可能相互冲突,因此,会导致大量的超时现象 设置b账户,事务的隔离级别 B账户,首先,将b账户的隔离级别设置为SERIALIZABLE 可以看出,b账户的事务隔离级别设置为了SERIALIZABL[详细]
-
MySQL事务的幻读
所属栏目:[MySql教程] 日期:2020-12-12 热度:193
幻读——PHANTON READ 又称为虚度,是指在一个事务内,两次查询中数据条数不一致 幻读和不可重复读类似,都是在两次查询过程中,区别,幻读是由于其他事务做了插入记录的操作,导致,记录条数有所增加 设置b账户的隔离级别 B账户,由于,前面将事务的隔离级[详细]
-
MySQL事务的读脏
所属栏目:[MySql教程] 日期:2020-12-12 热度:179
所谓读脏,是指一个事务读取了,另外一个事务未提交的数据 首先,开启两个命令行窗口,模拟账户a和账户b 登录到数据库,chapter06 设置b账户,事务的隔离级别 MySQL默认的隔离级别是REPEATABLE READ——可重复读 该级别是可以避免读脏的,因此,需要将b账户[详细]
-
MySQL事务的不可重复读
所属栏目:[MySql教程] 日期:2020-12-12 热度:104
不可重复读——NON-REPEATABLE READ 是指事务中,两次查询的结果不一致,原因,在查询的过程中,其他事务做了更新的操作 脏读,是读取了前一个事务,未提交的脏数据 不可重复读,是在事务内重复读取了,别的线程已提交的数据 h3 id="演示不可重复读"演示不可[详细]
-
MySQL事务的隔离级别
所属栏目:[MySql教程] 日期:2020-12-12 热度:144
数据库是多线程并发访问的,所以,很容易出现多个线程同时开启事务的情况,这样,就会出现脏读、重复读以及幻读的情况 为了避免这种情况的发生,需要为事务设置隔离级别,MySQL中,事务有4种隔离级别 h3 id="read-uncommitted"READ UNCOMMITTED 读未提交,是[详细]
-
MySQL事务的回滚
所属栏目:[MySql教程] 日期:2020-12-12 热度:176
在操作一个事务时,如果,发现当前事务中的操作不合理,此时,只要还没有提交事务,就可以通过回滚来取消当前事务 A账号有1000元,B账号有1000元 开启一个事务,使用update语句,将a账号的100元,转给b账号 上述语句执行成功后,查看a账户和b账户的金额 可以[详细]
-
MySQL事务的提交
所属栏目:[MySql教程] 日期:2020-12-12 热度:61
事务的提交方式为手动提交 有两个账户,a账户有900元,b账户有1100元 开启一个事务,使用update语句,实现由b账户,向a账户转100元的转账功能 执行完成上述语句,查询account表中的余额 可以看出,在事务中实现了转账功能 此时,退出数据库,然后重新登录,[详细]
-
MySQL事务的特性
所属栏目:[MySql教程] 日期:2020-12-12 热度:99
事务具有很严格的定义,必须同时满足4个特征 原子性、一致性、隔离性、持久性,也就是人们常说的ACID标准 h3 id="原子性atomicity"原子性——Atomicity 原子性,是指一个事务必须被视为,一个不可分割的最小工作单元,只有事务中所有的数据库操作都执行成功[详细]
-
MySQL事物的概念
所属栏目:[MySql教程] 日期:2020-12-12 热度:146
事务处理机制,在程序的开发过程中非常重要,可以使整个系统更加安全,保证在同一个事务中的操作具有同步性 比如,人们经常进行的转账操作,转账分为两部分来完成,转入和转出,只有这两部分都完成,才认为转账成功 h3 id="事务"事务 就是针对数据库的一组操[详细]
-
MySQL带比较运算符的子查询
所属栏目:[MySql教程] 日期:2020-12-12 热度:91
h3 id="比较运算符"比较运算符 子查询中,可以使用比较运算符,比如 、 =、=、!=等 使用带比较运算符的子查询,查询赵四是哪个部门的员工 可以看出,赵四是媒体部的员工 首先,通过子查询可以知道,赵四的部门did=2,然后,将这个did作为外层查询的条件,可[详细]