MySQL数据库
sem00000
这个作者很懒,什么都没留下…
展开
-
MySQL数据库——锁机制
1 认识锁机制在认识锁机制前,首先思考一个问题:在同一时刻,用户A和用户B同时要获取并修改sh_goods表中id等于2的stock库存量值,此时会发生什么呢?假设在初始情况下,sh_ goods表中id等于2的stock库存量值为500。在不添加锁的前提下,用户A关闭自动提交,将stock的值修改为300,然后查询当前stock值为300(修改但未提交);与此同时用户B也获取stock,它的值却为500。当用户A提交了修改后,用户B获取到的值又变为300。整个操作过程出现了两个大的问题,一是用户B第原创 2020-06-28 00:30:01 · 377 阅读 · 0 评论 -
MySQL数据库——事务
1 事务处理事务处理在数据库开发过程中有着非常重要的作用,它可以保证在同一个事务中的操作具有同步性。本节将针对事务处理的基础知识进行讲解。1.1 事务的概念现实生活中,人们经常会进行转账操作,转账可以分为转人和转出两部分,只有这两个部分都完成才认为转账成功。在数据库中,这个过程是使用两条SQL语句来实现的,如果其中任意一条语句出现异常没有执行,则会导致两个账户的金额不同步,造成错误。为了防止上述情况的发生,就需要使用MySQL中的事务(Transaction)。在MySQL中,事务就是针对数据库的一原创 2020-06-28 00:22:05 · 1233 阅读 · 0 评论 -
MySQL数据库——数据库维护
数据库日志的管理与维护MySQL数据库主要有5种类型的日志,分别为慢查询日志(log-slow-queries),二进制日志(log-bin),错误日志(log-error),查询日志(log),更新日志(log-update)。在新的MySQL版本中,已取消了更新日志,可以用二进制日志来替代这个功能。文章侧重讲解慢查询日志和二进制日志。慢查询日志(log-slow-queries)MySQL慢查询,指的是查询消耗时间较多,或者没有使用索引的查询,MySQL可以同时记录这两种情况:# 慢日志保存路径原创 2020-06-21 00:11:42 · 1581 阅读 · 0 评论 -
MySQL数据库——约束类型
约束的简介数据的完整性是指数据的正确性和一致性,可以通过定义表时定义完整性约束,也可以通过规则,索引,触发器等。约束分为两类:行级和表级,处理机制是一样的。行级约束放在列后,表级约束放在表后,多个列共用的约束放在表后。完整性约束是一种规则,不占用任何数据库空间。完整性约束存在数据字典中,在执行SQL或PL/SQL期间使用。用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。总的来说有五种:唯一性和主键约束、外键约束、检查约束、空值约束、默认原创 2020-06-21 00:05:22 · 322 阅读 · 0 评论 -
MySQL数据库——表类型(存储引擎)的选择
1 MySQL 存储引擎概述插件式存储引擎是 MySQL 数据库最重要的特性之一,用户可以根据应用的需要选择如何存储和索引数据、是否使用事务等。MySQL 默认支持多种存储引擎,以适用于不同领域 的数据库应用需要,用户可以通过选择使用不同的存储引擎提高应用的效率,提供灵活的存 储,用户甚至可以按照自己的需要定制和使用自己的存储引擎,以实现最大程度的可定制性。MySQL 5.0 支持的存储引擎包括 MyISAM、InnoDB、BDB、MEMORY、MERGE、EXAMPLE、 NDB Cluster、AR原创 2020-06-12 23:24:53 · 2748 阅读 · 0 评论 -
MySQL数据库——常用函数
1 字符串函数字符串函数是最常用的一种函数了,如果大家编写过程序的话,不妨回过头去看看自己使用 过的函数,可能会惊讶地发现字符串处理的相关函数占已使用过的函数很大一部分。MySQL 中字符串函数也是最丰富的一类函数,表 1 中列出了这些函数以供参考。表 1 MySQL 中的常用字符串函数函数功能CANCAT(S1,S2,…Sn)连接 S1,S2,…Sn 为一个字符串INSERT(str,x,y,instr)将字符串 str 从第 x 位置开始,y 个字符长的子串替换为字符原创 2020-06-12 23:08:40 · 917 阅读 · 0 评论 -
MySQL数据库——查询数据案例(3)
查询以特定字符或字符串结尾的记录字符’$’匹配以特定字符或者字符串结尾的文本。【例70】在fruits表中,查询f_name字段以字母’y’结尾的记录,SQL语句如下: SELECT * FROM fruits WHERE f_name REGEXP 'y$';+------+------+------------+---------+| f_id | s_id | f_name | f_price |+------+------+------------+---------+| b1原创 2020-05-29 23:45:58 · 967 阅读 · 0 评论 -
MySQL数据库——查询数据案例(2)
为了演示的需要,首先创建数据表suppliers,SQL语句如下:CREATE TABLE suppliers( s_id int NOT NULL AUTO_INCREMENT, s_name char(50) NOT NULL, s_city char(50) NULL, s_zip char(10) NULL, s_call CHAR(50) NOT NULL, PRIMARY KEY (s_id)) ;插入需要演示的数据原创 2020-05-29 23:44:32 · 4045 阅读 · 0 评论 -
MySQL数据库——查询数据案例(1)
查询数据下面以一个例子说明如何使用SELECT从单个表中获取数据。首先定义数据表,输入语句如下:CREATE TABLE fruits(f_id char(10) NOT NULL,s_id INT NOT NULL,f_name char(255) NOT NULL,f_price decimal(8,2) NOT NULL,PRIMARY KEY(f_id) );为了演示如何使用SELECT语句,需要插入如下数据: INSERT原创 2020-05-29 23:42:25 · 4979 阅读 · 0 评论 -
MySQL数据库——案例:电子商务网站设计
在了解数据库设计的基本流程、规范以后,为了学以致用,本节将以电子商务网站为例,演示如何进行数据库设计。通过实际操作,加深对数据库设计的理解。1、需求分析电子商务网站是一种在互联网上开展电子商务的平台,常见的电子商务网站有淘宝、天猫、京东、亚马逊等。一般来说,电子商务网站最基本的功能是在线购物,它分为前台和后台,后台面向网站的运营人员,用于录人数据,前台面向访问网站的用户,用于选购商品。下面通过表1列举电子商务网站中的一些常见需求。表1 电子商务网站需求说明表1中列举的需求非常多,但对于初学者来说,原创 2020-05-22 23:55:48 · 38437 阅读 · 0 评论 -
MySQL数据库——数据库设计概述与范式
数据库设计概述数据库设计要求设计人员对数据库有深入的理解,才能设计出高质量的数据库。数据库设计一般分为6个阶段,分别是需求分析、概念数据库设计、逻辑数据库设计、物理数据库设计、数据库实施、数据库运行和维护。1.需求分析在需求分析阶段,数据库设计人员需要分析用户的需求,将分析结果记录下来,形成需求分析报告。在这个阶段中,双方需要进行深入的沟通,以避免理解不准确导致后续的工作出现问题。在需求分析中有许多琐碎、耗时的工作,常见的工作如下。(1)收集数据。一个企业内的数据可能分散、零碎,由不同人员负责管理。原创 2020-05-22 22:56:11 · 1385 阅读 · 0 评论