通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

mysql为什么实际行数和显示的行数不一致

mysql实际行数和显示的行数不一致的原因:1、存在空行或重复行;2、存在触发器、存储过程;3、数据过于庞大。存在空行或重复行是指当数据库表中存在空行或者重复行时,这些行并不会被直接显示出来,从而导致显示行数与实际行数不同。

一、mysql实际行数和显示的行数不一致的原因

1、存在空行或重复行

当数据库表中存在空行或者重复行时,这些行并不会被直接显示出来。通过使用SELECT语句时,可以添加去重、排序等操作,从而导致显示行数与实际行数不同。解决方法是使用去重等操作来清除空行或重复行,使得查询结果更加准确。

2、存在触发器、存储过程

数据库表中可能设置了触发器、存储过程等,它们可能会对数据库表中的数据进行添加、修改、删除等操作,在这种情况下使用 SELECT 显示的结果与实际的行数也可能不同。解决方法是在编写SQL时将触发器、存储过程等考虑在内,并结合具体情况进行优化。

3、数据过于庞大

数据库表中的数据可能过于庞大,无法一次性全部显示出来,需要使用 LIMIT 等语句对数据进行限制和切分。解决方法是使用LIMIT、OFFSET等语句来对数据进行分页操作,并结合索引等方式来优化查询速度。

二、mysql概述

1、简介

MySQL Server 的名列前茅版由瑞典公司 MySQL AB 在 1995 年发布,该公司的创始人为 David Axmark、Allan Larsson 和 Michael Widenius。MySQL 的名字源自 Widenius 的女儿 My。MySQL 项目采用 GNU 通用公共许可 (GPL)在 2000 年作为开源发布。到 2001 年,MySQL 有超过 200 万次的有效安装;到 2004 年,该软件每天的下载超过 3 万次。MySQL 于 2008 年被 Sun Microsystems 以10亿美元收购。当 Oracle 于 2009 年收购 Sun Microsystems 时,它也获得了 MySQL 的所有权。如今,MySQL 是使用较广泛的开源关系数据库系统。

2、特点

  • 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
  • 支持多种操作系统,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等
  • 为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等
  • 支持多线程,充分利用CPU资源
  • 优化的SQL查询算法,有效地提高查询速度
  • 提供多语言支持,常见的编码如GB2312、BIG5、UTF8
  • 提供TCP/IP、ODBC和JDBC等多种数据库连接途径
  • 提供用于管理、检查、优化数据库操作的管理工具
  • 大型的数据库。可以处理拥有上千万条记录的大型数据库
  • 支持多种存储引擎
  • MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库
  • MySQL使用标准的SQL数据语言形式
  • Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统
  • 在线DDL更改功能
  • 复制全局事务标识
  • 复制无崩溃从机
  • 复制多线程从机

3、常用术语

  • 冗余:用来表示存储两倍的数据, 但会使数据访问更快,相当于redis。
  • 主键:用来执行每个表的关键性数据,并且,每个表中只有一个主键。
  • 外键:这应该是mysql的关键,使用外键来关联不同表。
  • 复合键:将多个键组合一起来作为索引值, 一般用于复合索引。
  • 索引:借用一组值,来对表进行排序,可以比作书的目录。
  • 参照完整性:参照的完整性要求关系中不允许引用不存在的实体。

4、系统组成

  • MySQL客户端:与服务器进行通信,向服务器发送执行SQL语句的请求;
  • MySQL服务器:接收客户端的请求并处理,然后返回执行结果;
  • 存储引擎(Storage Engine):将数据存储在磁盘或内存中,并支持各种操作;
  • 物理层:MySQL面向用户提供了各种应用程序和工具,如管理员工具、备份工具等等。

5、服务器的语言

SQL是结构化查询语言(Structured Query Language),是关系型数据库的标准语言,它具体包含以下5个部分:

  • 数据查询语言(DQL):就是用来搜索数据库里面的数据,也称为“数据检索语句”,以从表中获得数据,确定数据怎样5在应用程序出。保留字 SELECT 是 DQL(也是所有 SQL)用得非常多的动词,其他 DQL 常用的保留字有 WHERE,ORDER BY,GROUP BY 和 HAVING。
  • 数据操作语言(DML):对数据表里的数据进行添加,修改,删除。其语句包括动词 INSERT,UPDATE 和 DELETE。它们分别用于添加,修改和删除表中的 行。也称为动作查询语言。
  • 数据定义语言(DDL):创建删除修改数据库(表,列,索引等…)其语句包括动词 CREATE 和 DROP。在数据库中创建新表或删除表(CREATE TABLE 或 DROP TABLE);为表加入索引等。
  • 事务控制语言(TCL):它的语句能确保被 DML 语句影响的表的所有行及时得以更新。TCL 语句包括 BEGIN TRANSACTION,COMMIT 和 ROLLBACK。
  • 数据控制语言(DCL):它的语句通过 GRANT(授予权限)或 REVOKE(撤销权限)获得许可,确定单个用户和 用户组对数据库对象的操作权限。

6、选择MySQL的五大理由

每个数据库管理系统都有其忠实的粉丝社区,但是MySQL无疑是名列前茅。MySQL确实为用户提供了客观优势。

  • 简单明了:MySQL属于用户友好型。SQL及其语句的基本知识将允许与MySQL Server进行高效交互。您可以查询和更新数据以及管理数据库。
  • 开源:根据GPL(GNU公共许可证),MySQL是免费使用和修改的。该许可证确定免费用户的权利。商业许可证也可用–它允许在商业应用程序中使用MySQL软件,并且您不受GPL法规的约束。
  • 可扩展且快速:MySQL体系结构允许该系统支持较早大的应用程序。它提供适当的速度,并具有非常低的内存泄漏问题。而且,它可以管理表中几乎任何数量的数据(50+百万行)。初始文件大小限制为4GB,但可以增加到最大8TB数据。
  • 兼容多个平台 :MySQL Server与Microsoft Windows,Apple Macintosh OS X,Ubuntu和多个Unix选项兼容,例如AIX,BSDI,FreeBSD,HP-UX,OpenBSD,Net BSD,SGI Iris和Sun Solaris。
  • 高度安全:世界各地的专家都将MySQL视为最安全,最可靠的DBMS。其数据安全性选项可确保对任何入侵者进行适当的数据保护。

延伸阅读1:MySQL的优势

  • 成本低:开放源代码,社区版本可以免费使用。
  • 性能良:执行速度快,功能强大。
  • 操作简单:安装方便快捷,有多个图形客户端管理工具(MySQL Workbench/Navicat、MySQLFront, SQLyog等客户端)和一些集成开发环境。
相关文章