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;