创建表空间
基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间 tablesapce
create tablespace user1_tablespace datafile " E:\oracle\XE\user1.DBF" size 10 M;
oracle 自带表空间 为用户创建表的时候,存放对应用户表数据
Oracle系统用户:
sys用户 | system用户 | |
地位 | Oracle的一个超级用户 | Oracle默认的系统管理员,拥有DBA权限 |
作用 | 主要用来维护系统信息的管理实例 | 通常用来管理Oracle数据库的用户、权限和存储等 |
登录身份 | 只能以SYSDBA或SYSOPER角色登录 | 只能以Normal方式登录 |
创建用户:
create user user1 (用户名) identified by user1(密码) default tablespace user1_tablespace(表空间,临时或默认);
给用户分配角色或者权限:
角色是具有名称的一组权限的组合
常用系统预定定义角色
- connect : 临时用户
- resource : 可靠和正式的用户
- DBA:数据库管理员角色,拥有管理数据库的最高权限
分配权限和角色 : GRANT connect (privileges or role) TO user;
撤销权限或角色: REVOKE connect (privileges or role)FROM user;
上面操作可以通过工具生成
修改表结构
- 增加列 ALTER table stuInfo add (stutel_no varchar2(12),stuAddress varchar2(20));
- 修改列 ALTER table stuInfo modify(stuAge number(3,0) default 20);
- 删除列 ALTER table stuInfo drop(stutel_no, stuSeat);
添加约束:
- 主键约束: 唯一且非空
- 外键约束:用于两表之间建立关系,需要指定引用主表的那列
- 唯一约束:唯一,可以为空但空值只有一个
- 检查约束:某列的取值范围限制,格式限制 (比如年龄)
- 非空约束:在建表的时候加
约束名的取名规则:
- 主键约束:如 PK_stuNo
- 唯一约束:如 UQ_stuID
- 检查约束:如 CK_stuAge
- 外键约束:如 FK_stuNo
添加约束的语法:
alter table 表名 add constraint 约束名 约束类型 具体的约束说明
alter table stuInfo add constraint PK_stuNo primary key(stuNo);
alter table stuInfo add constraint FK_stuNo foreign key(stuNo) reference dept(dno);
alter table stuInfo add constraint UQ_stuId unique(stuId);
alter table stuInfo add constrain CK_stuAge check(age between 6 and 25);
删除表约束:
alter table studInfo drop constraint CK_stuAge;