Chinaunix首页 | 论坛 | 博客
  • 博客访问: 92309831
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-04-07 12:53:47

   来源:赛迪网技术社区    作者:sanandi

Oracle数据库的自动导入与导出,在许多地方有广泛的应用。例如:一个Oracle数据库应用系统开发结束后,如果要将系统安装到客户计算机上,就需要将初始数据导入到用户的Oracle数据库中。

最近项目中也需要实现以上功能,花了点时间搜索实验,整理如下:

先把要安装的初始数据文件导出为initial.dmp,然后在客户计算上安装好Oracle,接着执行批处理文件impInitialData.bat(与该批处理文件同一目录还有createuser.sql,initial.dmp两个文件)。

impInitialData.bat中内容如下:

@echo off
sqlplus system/manager @createuser
imp system/manager file=initial.dmp fromuser=initialuser 
touser=initialuser ignore = y

上面的createuser是一个扩展名为sql的文件.与批处理文件放在同一目录下.其内容为:

create user initialuser identified by test;
grant dba,resource,connect to initialuser;
exit;

补充:删除用户时用:drop user powercc cascade; 其中powercc为用户名。

简要解释一下:@echo off表示其之后的命令不在命令提示符窗口显示出来。sqlplus为Oracle的一个工具程序,须先安装Oracle后才能使用。system/manager为Oracle的一个默认管理员帐户,如果被锁定或更改密码了就不能用了,可以用其它的帐户/密码来替换。@createuser表示执行createuser.sql文件。该sql文件中, create user xx identified by yy;表示创建一个密码为yy的用户xx。grant dba,resource,connect to xx;表示授权给用户xx dba,resource,connect 权限。imp为导入数据命令,后面的参数中 file表示要导入的数据库文件;fromuser表示原导出的数据库文件的用户名;touser表示要导入的数据库的用户名;ignore表示忽略错误。

大致的方法就是这样,可以再增添其它命令来执行更复杂的操作.

阅读(146) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~