数据库
烟花易冷人事易分
这个作者很懒,什么都没留下…
展开
-
数据库范式总结
出自《四火的唠叨》数据库表结构设计时,遵从一定的范式(NF,Normal Form)可以减少数据冗余和操作异常。第一范式(1NF)1NF指的是每个属性值都是不可再分的。满足1NF的关系被称为规范化的关系,1NF也是关系模式应具备的最起码的条件。比如有这样一张表user的两列:namephone_numberphone_number这一列只存储一个电话号码转载 2013-03-29 15:22:29 · 603 阅读 · 0 评论 -
SQL Server 存储过程
SQL Server 存储过程Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。Ø 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行转载 2014-03-26 13:13:08 · 480 阅读 · 0 评论 -
Oracle 根据字符串的长度排序
select * from student s where s.sno=183 order by nvl(length(trim(s.sname)),0) asc -- 递增排序-- nvl(attribute,default value) 当属性值为空时就将其值设默认值 -- length(attrbute) 得到字符串的长度 -- trim(attribute) 去掉字符的空格原创 2014-11-14 17:17:32 · 6550 阅读 · 0 评论 -
oracle中修改已存在数据的列
在oracle中,如果已经存在的数据的某些列,假如要更换类型的话,有的时候是比较麻烦的, 会出现:ORA-01439: column to be modified must be empty to change datatype-- 修改khi_cdocument表,PRETREATMENT_WEIGHT类型改为 numberalter table khi_cdocumen原创 2014-11-14 09:05:56 · 630 阅读 · 0 评论 -
"ORA-01502: 索引''或这类索引的分区处于不可用状态"的解决方案
这个问题的原因是索引失效,select index_name ,status from user_indexes where Status = 'UNUSABLE' 可以查询出失效的索引,通过 select 'alter index ' || index_name || ' rebuild;' from user_indexes where Status = 'UNUSABLE'转载 2015-01-09 08:58:03 · 7151 阅读 · 0 评论 -
Oracle中分区表的使用
前提: 查询分区:Select *From user_extents WHERE partition_name='分区名';1)创建表空间create tablespace HRPM0datafile '/oradata/misdb/HRPM0.DBF' size 5m autoextend on next 10m maxsize unlimited2)删除表空间(同时把数转载 2014-12-12 16:16:52 · 450 阅读 · 0 评论 -
Redis的常用命令及高级应用
Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以在Linux终端使用。1.键值相关命令2.服务器相关命令一:键值相关命令keys * :返回满足给定pattern的所有key,*代表取出多有key ,xiaojun* ,代表xiaojun大头的keysexists : 确认一个key是否存在。 exists name .原创 2015-12-17 11:34:07 · 419 阅读 · 0 评论 -
数据库常用SQL优化总结
一、百万级数据库优化方案1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null最好不要给数据库留NULL,尽可能的使用 NOT转载 2018-01-08 09:50:51 · 857 阅读 · 0 评论