您的位置:首页 > 数据库 > Oracle

关于oracle数据库导入问题

2013-12-25 09:45 225 查看
目的:做一个脚本,只要一运行就可以完成该数据库表空间,表,基础数据的全部导入

操作:第一步建立表空间,下面是范例

CREATE TABLESPACE rds4

LOGGING

DATAFILE 'D:\rds4.DBF'

SIZE 32M

AUTOEXTEND ON

NEXT 32M MAXSIZE 2048M

EXTENT MANAGEMENT LOCAL;

create user rds4 identified by a

default tablespace rds4;

grant connect,resource to rds4;

grant

CREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE,

ALTER ANY TABLE, ALTER ANY PROCEDURE,

DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,

SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLE

TO rds4;


第二步:创建表,下面是范例

prompt

prompt Creating table ALARM_CODE

prompt =========================

prompt

create table RDS4.ALARM_CODE

(

ALARM_ID VARCHAR2(30),

ALARM_NAME VARCHAR2(300)

)

tablespace RDS4

pctfree 10

initrans 1

maxtrans 255

storage

(

initial 64K

minextents 1

maxextents unlimited

);

comment on table RDS4.ALARM_CODE

is '警情字典表';

comment on column RDS4.ALARM_CODE.ALARM_ID

is '警情编号';

comment on column RDS4.ALARM_CODE.ALARM_NAME

is '警情名称';


这些表结构是通过pl/sql的tools->导出用户对象,勾选“包括权限,包括存储,包括所有者”

第三步:插入数据,这里就要特别小心了

比如你是在system下操作的,如果是在同一个表空间,那么这样去写

insert into RDS4.T_P_ROLE_MODULE (ROLE_ID, MODULE_ID)

values (1, 16);


假如不在同一个表空间,那么你还得先执行这么一条语句:

create database link dblink_bbb connect to
rds4 identified by rds4 using
'a';


这句话是建立一个数据库的链接,因为你是在一个数据库下向另一个数据库进行插入数据的,所以要先连接一下那个数据库,上面红色部分是需要改的

第一个是rds4是你要连接的表空间名,即数据库名,第二个rds4是你要操作的那个用户名,a是那个用户的密码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: