随笔分类 - 数据库
摘要:建表规约【强制】创建表时必须显式指定表存储引擎类型,如无特殊需求,一律为InnoDB。【强制】必须有行数据的创建时间字段create_date和最后更新时间字段edit_date。【强制】自增主键命名必须是id,关联表外键命名xxyyzz_id;业务主键命名必须是key char(36)。【推荐】反
阅读全文
摘要:一、【问题描述】 客户表(CLT.CSM_BASEINFO)左连接证件信息表(CLT.CSM_CERTINFO),通过客户名称查询客户信息。 1)证件信息表的字段筛选条件,放到on后面,查询结果正常 SELECT clt.CLT_COD, ctf.CTF_NBR FROM CLT.CSM_BASEI
阅读全文
摘要:缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。 解决方案
阅读全文
摘要:遇到这个错误就是密码过期问题,Oracle数据库默认密码时间是180天,首先你遇到这个问题时,你已经登不上去了,首先你要先登上去修改密码吧先,不然怎么进行后面的操作,对吧。 前置操作: 1.Oracle无密码登陆: 打开SQLplus输入:/ as sysdba 2.修改用户的密码: alter u
阅读全文
摘要:1.在我们安装完数据库时会有一个sqlplus: 2.打开sqlplus输入:/ as sysdba 这样就进来了,还是sys用户,这样就可以操作其他用户了,以后妈妈再也不用担心我忘记密码了。 注意:在我们使用sys用户登录时,直接登录是登录不上去的:看图: 需要给sys用户加sysdba角色: 具
阅读全文
摘要:错误代码:12541(无监听) 解决办法:检查如下该服务是否开启: 错误代码:28547: 解决办法:检查如下服务是否开启: 一般这些服务没有开机自启,有时候用Navicat连接Oracle时会出现这些错误。 用Navicat连接Oracle11g数据库时报错ORA-28547:connection
阅读全文
摘要:1、left(name,4)截取左边的4个字符 : 例子: SELECT LEFT(201809,4) 年 结果:2018 2、right(name,2)截取右边的2个字符: 例子: SELECT RIGHT(201809,2) 月 结果:09 3、SUBSTRING(name,5,3) 截取nam
阅读全文
摘要:解释: 官方解释: 语法: LIMIT子句的SELECT语句的基本语法如下: SELECT column1, column2, columnN FROM table_name LIMIT [no of rows] 以下是LIMIT子句时使用OFFSET子句的语法: SELECT column1, c
阅读全文
摘要:Java连接MySQL8.0以上版本数据库方式: 1、com.mysql.jdbc.Driver 更换为 com.mysql.cj.jdbc.Driver 2、MySQL 8.0 以上版本不需要建立 SSL 连接的,需要显式关闭。 jdbc:mysql://localhost:3306/数据库名?u
阅读全文