MySQL

MySQL8.0+ row_number() 函数:行添加序号

在MySQL中,row_number() 函数用于为结果集中的行分配连续序号,即返回每行在分区内的连续编号。其语法格式如下:row_number()over(partitionbyexprorderbyexpr)--返回行的连续序号row_number()函数是一个窗口函数,用于为结果集中的每一行分配一

MySQL now() 函数:获取当前日期时间

在MySQL中,now() 函数用于获取当前日期时间,即返回系统当前的日期和时间值。其语法格式如下:now()--返回当前日期时间now()函数不需要任何参数,直接返回当前的日期时间值(格式:YYYY-MM-DD HH:MM:SS)。值得注意的是,now() 总是返回当前的系统日期时间,不受其他参数影响。下面,我们将使用now()函数获取当前日期时间:selectnow()

MySQL 触发器修改与删除

一、删除触发器 (DROP TRIGGER)基本语法:DROPTRIGGER[IFEXISTS][database_name.]trigger_name;参数说明:`IF EXISTS`: 可选,避免因触发器不存在而报错`database_name`: 可选,指定数据库名,默认为当前数据库`trigge

MySQL如何处理无效值?

MySQL 默认遵循宽松的数据处理策略,对越界值及异常数据不会主动验证或拦截,而是直接存储原始输入内容,即所谓“垃圾进,垃圾出”。此机制可能导致查询结果与语义预期不符。为提高数据一致性,MySQL 支持启用严格的 SQL 模式,该模式下系统将拒绝非法值并抛出错误,从而实现对数据完整性的强制约束,其行为与多数关系型数据库保持一致。一般情况下,MySQL会按照表格进行对非正常值的处理:数据类型非法值处

MySQL 算术运算符

算术运算符是 SQL 中最基础且最常用的运算符类型,用于执行各种数学计算。MySQL 提供了完整的算术运算符集合,可以满足各种数值计算需求。一、MySQL 支持的算术运算符运算符名称描述示例结果+加法计算两个或多个值的和SELECT 5+3;8-减法从一个值中减去另一个值SELECT 10-4;6*乘法计算两个或多个值的乘积SELECT 6*7;42/除法计算两个值的商SE

MySQL concat() 函数:字符串拼接

在MySQL中,concat(str1, str2, ...) 函数用于连接多个字符串,即返回所有参数字符串连接后的结果。其语法格式如下:concat(str1,str2,...)--返回连接后的字符串concat()函数根据多个参数字符串将它们按顺序连接成一个新的字符串。值得注意的是,concat(NULL, str) 的返回值是NULL;而concat(数字

MySQL二进制日志详解与数据恢复

一、二进制日志基础查看二进制日志配置查看二进制日志状态SHOWVARIABLESLIKE'log_bin%';查看当前二进制日志文件SHOWMASTERSTATUS;查看所有二进制日志文件SHOWBINARYLOGS;&nbsp

如何理解MySQL里的字符集和校对规则?

校对规则(Collation)是字符集内部定义的字符比较与排序规则。一个字符集可对应多种校对规则,且拥有一个默认规则。字符集与校对规则彼此依存,共同作用:字符集决定数据存储编码,校对规则决定数据比较逻辑。在字符集与校对规则的设计上,不同数据库存在理念差异。SQL Server 等数据库将二者耦合,选择字符集即隐含确定了其默认的校对规则。而 MySQL 则采用了显式解耦的设计,允许对字符集和校对规则

MySQL 非空约束(NOT NULL)

非空约束是数据库设计中确保数据完整性的重要手段,它强制要求表中的特定列必须有值,不能为NULL。非空约束的核心特性1. 强制数据完整性:确保关键字段必须有值2. 防止空值错误:避免应用程序因空值导致的逻辑错误3. 与默认值约束配合:常与DEFAULT约束一起使用,确保字段始终有值使用方法创建表时设置非空约束CREATETABLEtb_de

MySQL 整数类型

整数类型概述MySQL 提供了5种整数类型,用于存储不同范围的整数值,每种类型占用不同的存储空间:类型名称说明存储需求有符号范围(signed)无符号范围(unsigned)TINYINT很小的整数1字节-128 ~ 1270 ~ 255SMALLINT小的整数2字节-32,768 ~ 32,7670 ~ 65,535MEDIUMINT中等大小的整数3字节-8,388,60