MySql高频问答
一、数据库知识通用篇1.说说主键、外键、超键、候选键超键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余元素的超键。主键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。外键:在一个表中存在的另一个表的主键称此表的外键。
2.为什么用自增列作为主键?如果我们定义了主键(PRIMARY KEY),那么InnoDB会选择主键作为聚集索引、如果没有显式定义主键,则InnoDB会选择第一个不包含有NULL值的唯一索引作为主键索引、如果也没有这样的唯一索引,则InnoDB会选择内置6字节长的ROWID作为隐含的聚集索引(ROWID随着行记录的写入而主键递增,这个ROWID不像ORACLE的ROWID那样可引用,是隐含的)。数据记录本身被存于主索引(一颗B+Tree)的叶子节点上。这就要求同一个叶子节点内(大小为一个内存页或磁盘页)的各条数据记录按主键顺序存放,因此每当有一条新的记录插入时 ...
Windows错误代码对应解决方案
错误代码0x80131500打开“运行”输入 inetcpl.cpl (“WINDOWS”+“R”键,输入 inetcpl.cpl亦可)点开高级往下拉,勾上”使用TLS 1.2”选项,或者点还原高级设置。
让开发效率“飞起”的VS Code插件
前言VSCode,是一个免费的、开源的跨平台编辑器,也是我最满意的编辑器之一。本文向大家推荐一些我喜欢的vscode插件,不出意外的话,这些插件将对你的工作效率提升有不小的帮助!
GitLensVS Code中的 Git 体验在易用性和完整性之间取得了一个不错的平衡,大部分用户都能够使用它完成工作,同时又不会被太多的功能吓到。但是很多硬核的 Git 用户肯定会觉得功能还不够用。包括但不限于:不能查看某个 commit 中的代码改动;不能比较两个 commit 或者 branch,然后阅览代码改动;不能查看代码历史记录。不过 GitLens 这个插件的出现,就弥补上了上述不足。类似的 Extension:
Git History – 用来查看 git log 或则一个文件的 git 历史,比较不同的分支,commitsGit Blame - 它允许您在当前选定行的状态栏中看到 Git Blame 信息。GitLens 也提供了类似的功能。Git Project Manager –可以一键搜索并打开某个的基于 Git 管理的项目
Quokka.jsQuokka.js 是一个用于 Java ...
常用SQL备忘
保留两位小数sql server:
1select **Convert**(decimal(18,2),2.176544)
结果:2.18
1select **CAST**(2.176544 as decimal(18,2))
结果:2.18
1select **Round**(2.176544,2)
结果:2.180000
oracle:select trunc(1.23856789,2)round(m,n) 四舍五入trunc(m,n) 不四舍五入,直接丢弃。
查询重复数据123select * from 表名 a where exists (select 1 from 表名 where 字段1=a.字段1 and 字段2=a.字段2 group by 字段1,字段2 having count(1)>1)
递归查询数据12345678910with cte as( select Id,Pid,Name from 表名 where Id = 1 union all select t.Id,t.Pid,t.Name from cte c i ...