1、进入sqlplus(不区分大小写,除了特殊要大写的)
sqlplus system/yaoxiyao as sysdba
conn scott/yaoxiyao
2、创建一个表空间
(1)为orcl数据库创建一个永久性的表空间orcl1,区自动扩展,段采用自动管理方式
create tablespace orcl1 datafile 'D:\app\oradata\yao\data_1.dbf' size 2000M;
(2)为orcl数据库创建一个临时的表空间orcl2
create temporary tablespace orcl1 tempfile 'D:\app\oradata\yao\data_1.dbf' size 2000M
extent management local uniform size 100M;
删除表空间orcl1及其所有内容,同时删除其所对应的数据文件
DROP TABLESPACE orcl1 INCLUDING CONTENTS AND DATAFILES;
3、创建学生表,课程表,选课表
create table Student1(
sno number(6) constraint S_PK primary key,
sname varchar2(10) not null,
sex char(2),
sage number(6,2),
constraint S_CK2 check(sage between 18 and 60)
);
4、create table course(
cno number(10) primary key,
cname char(20) unique
);
5、create table SC(
sno number(6) references student1(sno),
cno number(4) references course(cno),
grade number(5,2),
constraint SC_PK primary key(sno,cno) --联合做主键
);
6、查看customers这个表
desc customers;
select * from customers;
7、修改表的列
(1)列的添加
alter table 表名 add(新列名 datatype() not null);
(2)修改列类型
alter table 表名 modify 列名 新类型;
(3)修改列名
alter table表名 rename column 旧名 to 新名;
(4)删除一列或多列
alter table 表名 drop column 列名 cascade constraints;
alter table 表名 drop (列名1,列名2);
(5)删除列可以先将列设置为unused,然后删除
alter table 表名 set unused column 列名;
alter table 表名 set unused column (列名1,列名2);
alter table 表名 drop unused columns;
8、主键约束添加
alter table customers add constraint 随意名 primary key(customers_id);
9、外键约束添加
alter table 表名 add constraint 随意名字 FOREIGN KEY(现在这个表的属性即列名) REFERENCES publishers(引用表的属性);
10、添加唯一性约束
alter table 表名 add contraint 随意名 unique(列名);
11、添加检查约束
alter table 表名 add constraint 随意名 check(sage between 13 and 53);
12、添加空/非空约束
alter table 表名 modify resume not null;
alter table 表名 modify resume null;
13、约束的删除
(1)删除指定属性的约束
alter table 表名 drop unique(列名);
(2)删除指定名称的约束
alter table 表名 drop constraint 随意名;
(3)删除约束的同时也删除引用该约束的其他的约束,即删除此主键,其他外键也删?
alter table 表名 drop contraint 主键随意名 cascade;
14、查看表'CUSTOMERS'的主键约束名称,以及主键约束的字段名称
select a.constraint_name, a.column_name
from user_cons_columns a, user_constraints b
where a.constraint_name = b.constraint_name
and b.constraint_type = 'P'
and a.table_name = 'CUSTOMERS';
15、查看表student 中所有约束
select constraint_name, constraint_type, deferred, status from user_constraints where table_name=”STUDENT”;
16、查看表student中各个约束所作用的列
select constraint_name, column_name from user_cons_columns where table_name=”STUDENT”;
17、创建一个用户时没有权限怎么办?
create user test1 identified by test;
如若权限不足,进入system,输入alter user sys identified by newpass; 再输入conn sys/newpass as sysdba;可进入sys。现在有权限创建test1了
grant create session to test1;
conn test1/test;
18、创建一个用户user1,口令是user1,默认表空间为users,在该表空间的配额为10MB,初始状态为锁定。
create user user1 identified by user1 default tablespace users quota 10M on users account lock;
19、创建一个用户user2,口令为user2,默认表空间为users,在该表空间的配额为10MB。口令设置为过期状态,即首次连接数据库时需要修改口令。概要文件为example_profile(假设概要文件已经创建)
create user user2 identified by user2 default tablespace users quota 10M on users profile example_profile password expire;
20、修改用户user3的口令为newuser3,同时将该用户解锁
alter user user3 identified by newuser3 account unlock;
21、修改用户user4的默认空间为orcl,在该表空间的配额为20MB,在users表空间的配额为10MB。
alter user user4 default tablespace orcl quota 20M on orcl quota 10M on users;
22、删除用户user5
drop user user5;
23、查询用户所有用户名及其默认表空间
select username, default_tablespace from dba_users;
24、查看数据库中各用户的登录时间、会话号
select sid ,serial#,logon_time, username from u$session;
25、查看当前用户的表
select table_name from user_tables;