连接数据库
- 直接登录
sqlplus
- 指定用户登录
sqlplus 用户名/密码 as sysdba
对表的操作
- 创建表
create table 表名(
列名1 number(2) primary key,
列名2 varchar(10) not null,
......);
- 添加字段
Alter table 表名 add(字段名 字段类型 Default 默认值……)
- 添加主键
alter table 表名 add constraint pk_表名 primary key(字段名1,字段名2...)
- 添加索引
alter table 表名 add constraint pk_表名 primary key(字段名1,字段名2...)
- 添加注释
表注释:
comment on table 表名 is '注释内容'
列注释:
comment on column 表名.列名 is '注释内容'
修改表
- 修改字段名
Alter table 表名 modify(字段名称 字段类型 Default 默认值)
- 修改索引
ALTER INDEX 索引名 REBUILD REVERSE
删除表
- 删除表
drop table 表名
- 删除字段
删除指定列
Alter table 表名 drop column 列名
删除无用列
Alter table member drop unused columns
- 删除主键
alter table 表名 drop constraint 索引名
- 删除索引
drop index 索引名
查看表
- 当前用户下是否有某个表
select * from user_tables where table_name = '表名'
- 某个用户下是否有某个表
select count(*) from dba_tables where owner = '某个用户名' and table_name = '表名'
- 查看索引
select* from all_indexes where table_name='表名'
对库的操作
创建库
- 创建表空间
CREATE TABLESPACE [表空间名称] DATAFILE '[表空间存放路径]' SIZE 10M REUSE
AUTOEXTEND ON NEXT 50M MAXSIZE 8G;
- 创建用户
create user [用户名] identified by "[密码]" default tablespace [表空间名]
- 用户赋权
grant [权限说明] tablespace to 用户名
grant select on TABLE_NAME tablespace to 用户名
赋权说明
connect
resource
dba
unlimited tablespace
select any table
update any table
insert any table
delete any table
create synonym
create materialized view
create view
- 导数据入库
客户端
imp 用户名/密码@实例名 file= dmp文件完整路径 full=y
imp 用户名/密码@ip地址/实例名 file= dmp文件完整路径 full=y
服务端
impdp 用户名/密码@实例名 dumpfile=dmp文件名 ignore=y
impdp 用户名/密码@ip地址/实例名 dumpfile=dmp文件名
修改库
- 增大表空间
alter tablespace [表空间名称] add datafile '[表空间文件完整路径]' size 1G
- 修改oralce导入路径
create directory dumpdir as '[路径]'
删除库
- 删除表空间
删除空的表空间,但是不包含物理文件
drop tablespace tablespace_name
删除空表空间,包含物理文件
drop tablespace tablespace_name including datafiles
删除非空表空间,包含物理文件
drop tablespace tablespace_name including contents and datafiles
删除非空表空间,但是不包含物理文件
drop tablespace tablespace_name including contents
如果其他表空间中的表有外键等约束关联到了本表空间中的表的字段
drop tablespace tablespace_name including contents and datafiles CASCADE CONSTRAINTS
- 删除用户
drop user 用户名 cascade
查看库
- 查看库版本
select * from v$version
- 查询数据库名
select name,dbid from v$database
show parameter db_name
- 查询实例名
select instance_name from v$instance
show parameter instance_name
- 查询数据库域名
select value from v$parameter where name='db_domain'
show parameter domain
- 查询数据库服务器
select value from v$parameter where name='service_name'
show parameter service
show parameter names
- 数据库服务名
show parameter service_name