摘要:
python中,往函数传参传的是指针,并非传值。 代码说话 如果改变函数参数的值,我们来看看改变: 但是如果是传的列表这种可变数据类型呢 传列表并没有发送改变,仍然指向的是原来的地址。 这是因为传的数据类型不一样,传不可变数据类型的时候,如果我们把值进行了改变,则将会把指针指向改变后的值,如果是传的 阅读全文
摘要:
缓存穿透 缓存穿透是指查询缓存中没有,数据库中也没有的数据 。从系统层面来看,请求像是穿透了缓存,直接访问数据库。这种情况会给系统带来潜在的风险,如果有大量的请求访问系统数据库中不存在的数据,会直接请求到数据库层导致DB瘫痪从而引起系统故障,服务不可用。 解决这种问题的方法有两个: 1、缓存空对象 阅读全文
摘要:
char的长度是不可变的,是定长的, varchar的长度是可变的,不定长的; 但是char的存取速度比varchar快,因为其长度固定,方便存储和查找。 char空间换时间,varchar时间换空间. 阅读全文
摘要:
InnoDB:支持事务,支持表级锁,行级锁,支持外键,是非聚集索引。 MyISAM:不支持事务,支持表级锁,不支持外键,聚集索引。 聚集索引和非聚集索引的区别:InnoDB是聚集索引,使用B+Tree作为索引结构,数据文件是和(主键)索引绑在一起的(表数据文件本身就是按B+Tree组织的一个索引结构 阅读全文
摘要:
主键:保证数据的唯一性,非空且唯一,一般设置主键的语法为:字段 类型 PRIMARY KEY;或者 字段 类型,PRIMARY KEY(字段名) 外键:保证数据的完整性,一致性。一般设置的外键关联的是另一张表的主键。外键的插入或者更新不能插入或更新主键表中没有的值,切记删除主键表中的数据时, 要先去 阅读全文