sql语句建表空间、用户、序列、表、删除表空间、备份表
1、在oracle数据库中创建用户
--创建用户表空间【需要DBA权限用户操作】
CREATE TABLESPACE TESTS
LOGGING
DATAFILE 'test.dbf' --opt/oracle/oradata/orcl/
SIZE 32M
AUTOEXTEND ON
NEXT 32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;
--创建用户【需要DBA权限用户操作】
CREATE USER test IDENTIFIED BY test
DEFAULT TABLESPACE TESTS;
--给用户赋权【需要DBA权限用户操作】
grant connect,resource to test;
2、为表建序列
--建序列
create sequence SEQ_TEST_USER
minvalue 1
maxvalue 99999999999
start with 100
increment by 1
cache 20;
--删除序列
drop sequence SEQ_FSR_USER;
3、建表
--建表
create table T_USER
(
user_id NUMBER not null,
user_name VARCHAR2(50),
user_password VARCHAR2(50),
user_type VARCHAR2(10),
account_status VARCHAR2(10),
create_time DATE,
audit_time DATE,
user_is_delete VARCHAR2(10),
sep_01 VARCHAR2(50),
sep_02 VARCHAR2(50),
sep_03 VARCHAR2(50)
)
-- Add comments to the columns
comment on column T_USER.user_id
is '自动增长ID';
--
tablespace TESTS
pctfree 10 -- Pctfree:块中保留用于UPDATE操作的空间百分比,当数据占用的空间达到此上限时,新的数据将不能插入此块中
initrans 1 -- 并行事务控制,1个代表最多一个并行事务
maxtrans 255 -- maxtrains定义了数据块中数据槽的最大值。事务表会根据需要动态扩展,最大达到MAXTRANS 个条目(假设块上有足够的自由空间)。所分配的每个事务条目需要占用块首部中的23~24 字节的存储空间。
storage -- 存储
(
initial 64K --表的INITIAL 值,不能修改
next 1M
minextents 1
maxextents unlimited
);
--为表添加主键
alter table T_USER
add constraint P_USER_ID primary key (USER_ID)
using index
tablespace TESTS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
);
4、如何彻底删除oracle创建的用户和表空间
删除表空间:
可以先将其offline
alter tablespace xx offline;
将磁盘上的数据文件一同删除
drop tablespace xxx including contents and datafiles;
删除用户:
drop user xxx;
如果用户的schema中有objects ,需要加cascade参数,即drop user xxx cascade;
5、备份一张数据表
create table tablename from select * from orignaltablename