数据库
数据库相关知识
卜可
每个人的成长路径都不同,但无一不是兴趣与使命驱动
展开
-
数据库优化:表的优化
一个好的数据库设计方案对于数据库的性能往往会起到事半功倍的效果。需要考虑数据冗余、查询和更新的速度、字段的数据类型是否合理等多方面的内容。1. 将字段很多的表分解成多个表(垂直分割)对于字段较多的表,如果有些字段的使用频率很低,则垂直分割该表,将原来的一个表分解为两个表。垂直分割遵循以下原则:把不常用的字段单独放在同一个表中把大字段独立放入一个表中把经常使用的字段放在一同一个表中2. 水平分原创 2017-07-31 15:17:39 · 3278 阅读 · 0 评论 -
SQL:with as用法
WITH AS短语,也叫做子查询部分,定义一个SQL片断后,该SQL片断可以被整个SQL语句所用到。有的时候,with as是为了提高SQL语句的可读性,减少嵌套冗余。比如sql:with A as ( select * from user) select * from A, customer where customer.userid = user.id**这个sql语句原创 2017-08-31 14:38:37 · 18979 阅读 · 0 评论 -
sql优化:Exists、IN的取舍
Exists定义EXISTS用于检查子查询是否至少会返回一行数据,事实上该子查询并不会返回任何数据,而是返回值True(存在数据)或False,也就是说EXISTS指定一个子查询,检测行的存在原创 2017-09-30 11:00:38 · 1076 阅读 · 0 评论 -
orcal:强大的decode函数
decode是orcal数据库特有的功能,可用于简洁的表达逻辑判断效果。decode表达式: DECODE(value, if1, then1, if2,then2, if3,then3, … else )value表示加入逻辑判断的计算值,如果value的值与f1吻合,decode函数返回then1,……,如果value与表达式中的所有fn值都不匹配,decode函数结果返回else。其中i原创 2017-10-28 23:02:59 · 1335 阅读 · 0 评论 -
解决MyBatis进行数据库操作时因参数过长导致打印日志过长的问题
如题,MyBatis是可以打印sql预警以及参数的,但是如果我们某个参数字段是CLOB类型时候,可能因为该字段过长而导致打印出来的日志超级长。这个字段的具体值我们又不关心,但是又不想关闭sql打印功能。这时候有个小窍门可以屏蔽这个字段的打印,而不影响sql和其他字段打印。在mapper的xml文件对该字段的操作sql中,什么数据类型为Clob,这样打印的时候把值当成流出来,而不会打印出整体内容#{c原创 2017-11-07 11:52:05 · 4784 阅读 · 1 评论 -
ocrale:循环插入数据
orcale数据库中,从一张表查询个别字段,并循环插入到另外一张表,入库字段不仅仅是原始表中的字段:declare cursor userids is select id_ from pl_user;begin for item in userids loop insert into pl_user_role (id_,role_id,user_id,create_原创 2018-01-03 11:37:45 · 1144 阅读 · 0 评论 -
Orcal:表操作
表字段修改修改表字段默认值alter table 表名 modify 字段名 default 默认值;alter table tablename modify create_time default sysdate;添加字段alter table user add (user_name varchar(50) default '默认字段' not null);原创 2017-09-26 11:02:43 · 1208 阅读 · 0 评论 -
mysq服务器配置文件说明
[client]default-character-set=utf8mb4#mysqlde utf8字符集默认为3位的,不支持emoji表情及部分不常见的汉字,故推荐使用utf8mb4 [mysql]default-character-set=utf8mb4 [mysqld]skip-locking #避免MySQL的外部锁定,减少出错几率增强稳定性。 #skip-name-...原创 2019-03-21 16:36:21 · 552 阅读 · 0 评论