1、用户登录
sqlplus scott/tiger @orcl
切换管理员权限解决序列从二开始计数的问题
conn root/admin as sysdba;
ALTER SYSTEM SET deferred_segment_creation=FALSE;
2、创建&删除表
create table 表名(){
字段名1 类型(大小) 约束(primary key主键),
字段名2 类型(大小) 约束,
constraint 约束别名 check(字段名>0),(指定约束,指定某一个字段的值约束)
constraint 约束别名 foreign key(本表主键字段名) references 约束表(约束表主键id字段)
}
DROP TABLE 表名称
-- 序列用于某一个表的数据添加的主键id的自增
-- 创建序列
create sequence sequnce_name;
-- 删除序列
drop sequence seq_name;
-- 查看当前序列的最大值:
select 序列名.currval from dual;
4、查看当前用户名下的表空间的所有表
select table_name from user_tables;
5、Oracle数据库初始表
表名 |
描述 |
EMP |
雇员表 |
DEPT |
部门表 |
SALGRADE |
薪水等级表 |
BONUS |
奖金表 |
6、dual表
- dual表是Oracle数据库中的一个虚表,它有一行一列,所有者是SYS用户但可以被数据库中的所有用户使用
- 不能向该表插入数据,但可以使用该表来选择系统变量,或者求一个表达式的值
7、表的复制
首先创建一个跟需要复制的表的表结构一样的表(表B)
insert into 表B select * from 表A
8、表空间的创建
create tablespace oracletestspace ==表空间的名称
datafile 'F:/xxx.dbf' == 用于设置物理文件名称
size 512m ==用于设置表空间的初始大小
autoextend on ==用于设置自动增长,如果存储量超过初始大小,则开始自动扩容
next 10m ==用于设置扩容的空间大小
9、用户的创建,赋权&删除
-- 创建用户
-- 用户名
create user 用户名
-- 用户名密码
identified by 密码
-- 指定该用户的表空间
default tablespace 表空间;
~~~~~~~~~~~~~~~~~~~~
--解除锁定:
alter user [username] account unlock;
~~~~~~~~~~~~~~~~~~~~~~~~
--查看用户的默认表空间
select 用户名,default_tablespace from dba_users
~~~~~~~~~~~~~~~~~~~~~~~
-- 为该用户名赋予为最高权限
grant dba to 用户名;
~~~~~~~~~~~~~~~~~~~~~~~
DBA用户登录:
conn system/admin
删除用户:
drop user [username] cascade --使用此命令(级联删除:包括删除表空间)
删除表空间:
drop tablespace ts_drp [ including contents and datafiles];
10、普通表的操作
-- 增加字段
ALTER TABLE 表名称 ADD(列名 1 类型 [DEFAULT 默认值],列名 1 类型 [DEFAULT 默认值]...);
-- 修改字段类型
ALTER TABLE 表名称 MODIFY(列名 1 类型 [DEFAULT 默认值],列名 1 类型[DEFAULT 默认值]...);
-- 修改字段名
ALTER TABLE 表名称 RENAME COLUMN 原列名 TO 新列名
-- 删除字段
ALTER TABLE 表名称 DROP COLUMN 列名;
ALTER TABLE 表名称 DROP (列名 1,列名 2...);
--删除一张表,再创建一张一样的表
TRUNCATE TABLE 表名;
11、用户权限
以管理员身份登录:system/admin
查询所有用户
select * from All_users
创建/修改新用户:
create/alter user [用户名] identified by [密码];
alter user 用户名 default tablespace 表空间名.dbf
CONNECT:临时用户,特别是那些不需要创建表的用户,通常赋予该角色。
RESOURCE:更为可靠和正式的数据库用户可以授予该角色,可以创建表、触发器、过程等。
DBA:数据库管理员角色,拥有管理数据库的最高权限。一个具有DBA角色的用户可以撤销任何别的用户甚至别的DBA权限,这是很危险的,所以不要把该角色轻易授予一些不是很重要的用户。
#把CONNECT、RESOURCE角色授予用户mm
GRANT CONNECT,RESOURCE TO mm;
#撤销用户mm的RESOURCE角色
REVOKE RESOURCE FROM mm;
撤消后该用户重新登录就会失去相应的权限
#允许用户查看EMP表中的记录
GRANT SELECT ON EMP TO mm;
#授权之后就可以访问指定的表了
select * from scott.emp
#允许用户更新EMP表中的记录
GRANT UPDATE on EMP TO mm;
12、数据的导出(expdp)&导入(impdp)
导出:
expdp 用户名/密码 schemas=用户名 dumpfile=导出数据文件名.dump logfile=导出日志文件名.log directory=磁盘路径
导入:
impdp 用户名/密码 schemas=用户名 dumpfile=导出数据文件名.dump logfile=导出日志文件名.log directory=磁盘路径