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角色授予用户mmGRANT 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=磁盘路径