懂得数据库范式,对于设计出一个合理的数据库有很大的帮助。本文根据自己对数据库范式的理解,结合具体的例子,尝试着用通俗易懂的语言讲明白数据库三范式。
第一范式(列不可拆分)
如果数据库中所有的字段值都是不可拆分的原子值,那么就满足第一范式了。简单点说就是不能有表中表,所以关系数据库都满足第一范式。例子略。
第二范式(完全依赖)
第二范式是在第一范式的基础上,保证所有非主键都依...
分类:
数据库 时间:
2014-08-03 15:24:05
阅读次数:
240
索引关键字的选取原则1、表的某个字段值得离散度越高,该字段越适合选作索引的关键字。主键字段以及唯一性约束字段适合选作索引的关键字,原因就是这些字段的值非常离散。尤其是在主键字段创建索引时,cardinality(基数,集的势)的值就等于该表的行数。MySQL在处理主键约束以..
分类:
其他好文 时间:
2014-08-01 20:18:52
阅读次数:
217
作用是计算一共有多少符合条件的行。1并不是表示第一个字段,而是表示一个固定值,count(1)和count(2)效果是一样的count(*),执行时会把星号翻译成字段的具体名字,效果也是一样的,不过多了一个翻译的动作,比固定值的方式效率稍微低一些。count(字段值),将返回符合条件的非空数量1.查...
分类:
数据库 时间:
2014-07-31 13:10:06
阅读次数:
363
下边用一张表来区分mysql在windows和linux默认情况下对大小写的敏感程度
操作系统
表名
变量名
字段值
windows
不敏感
不敏感
不敏感
linux
敏感
敏感
敏感
linux下先不做介绍,因为没有实际用过,下边说下在windows下的修改方法:...
分类:
数据库 时间:
2014-07-29 17:48:22
阅读次数:
239
MySQL将表a中查询的数据插入到表b中
如果表b存在
insert into b select * from a;
如果表b不存在
create table b as select * from a;
扩展:
将b表中的某写字段值插入到a表中
insert into a (userID,userName) select b.userID,b.userName fro...
分类:
数据库 时间:
2014-07-29 14:33:58
阅读次数:
197
正 文:数据库更新就一种方法Update,其标准格式:Update 表名 set 字段=值 where 条件只是依据数据的来源不同,还是有所差别的:1.从外部输入这样的比較简单例:update tb set UserName="XXXXX" where UserID="aasdd"2.一些内部变量,...
分类:
其他好文 时间:
2014-07-27 10:02:22
阅读次数:
193
由于文档的说明很少,导致里面改填写那些值都是靠自己推敲出来,当然可以根据他们的错误提示了研究,他们的错误提示也给出了相关的帮助了,例如通过categoryid的200000001获取到"id":10,"values":[{"id":200002203,"names":{"zh":"醋酸纤维","en...
分类:
其他好文 时间:
2014-07-25 18:58:31
阅读次数:
390
package?com.sadhu;
import?java.util.*;
import?java.lang.reflect.*;
/**
*/
public?class?Sample
{
????public?static?void?main(String[]?args)throws?Exception
????{
????????C...
分类:
其他好文 时间:
2014-07-23 17:40:01
阅读次数:
170
--=============================--SQL基础--> 约束(CONSTRAINT)--=============================一、几类数据完整性 实体完整性:表中记录不反复(不论什么两条记录不全等)而且每条记录都有一个非空主键 域完整性:表中字段值必须...
分类:
数据库 时间:
2014-07-23 12:12:46
阅读次数:
347
关键字情形后果join其中一个表较小,但key集中分发到某一个或几个reduce上的数据远高于平均值大表与大表关联,但是分桶的判断字段0值或空值过多这些空值都由一个reduce处理,非常慢group byGroup by维度过小,某值的数量过多处理某值的reduce非常耗时count distinc...
分类:
其他好文 时间:
2014-07-22 08:07:33
阅读次数:
180