设计原则
为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规 则。在关系型数据库中这种规则就称为范式。
范式是符合某一种设计要求的总结。 要想设计一个结构合理的关系型数据库,必须满足一定的范式。在实际开发中最为 常见的设计范式有三个:
第一范式(确保每列保持原子性),属性不可再分
第二范式(确保表中的每列都和主键相关),实体唯一
第三范式(确保每列都和主键列值直接相关,而不是间接相关),字段没有冗余
基本表及其字段之间的关系,应尽量满足第三范式。但是,满足第三范式的数据 库设计,往往不是最好的设计。为了提高数据库的运行效率,常常需要降低范式标准:适当增加冗余,达到以空间换时间的目的。
更合理的表设计会给每条记录加上一个唯一的识别,就是加上主键。
1)将一个 表字段设为主键要求在表创建的时候就进行设置。
2) 一个表里被设为主键的字段 的值必须是唯一的,也就是说如果一个字段被设为主键,这个表所有的数据列表里 这个字段的值不可能有重复的。
3) 被设为主键的字段不能插入空值。
4) 被设为 主键的字段的值是不能更改的。
5) 如果字段被设为是自增长的,主键只能设置一 个且它必须是主键。如果表中没有自增长的字段,则可以设多个字段为主键.
6) 主 键最好是一个和表里数据无关的值。比如说另建一个字段:id;而不要设在:name 等这些字段上。
两个表关联.两个表之间数据的关系有三种:
1)一对一;两个表里数据唯一对应;
2)一 对多;表 A 在表 B 里对应多条数据,但表 B 里的一条数据绝对只对就 A 中的一条数据;
3)多对多;A 里的一条数据对应B 里的多条数据,B 里一条数据也对应 A 中的多条数据。
客户端的安装
用户名默认是sys,我自己创建的是scott,密码是之前建的tiger,数据库使用默认的xe就可以,打开界面如下所示:
scott账户连接到xe
新建查询
新建→SQL窗口
select * from dual; //点击执行查询数据
准备表
找到D:\app\oracle\product\11.2.0\server\rdbms\admin路径下的scott.sql,拷贝到桌面上
然后用客户端打开,用户名sys,密码root,数据库xe,数据库sysdba,直接将刚刚准备好的scott.sql文件拖拽到命令窗口
执行后输入 show user ,查看用户
登录
查看emp表,
select * from emp;
select * from dept;
select * from salgrade;
select * from bonus;