oracle怎么新建包 oracle怎么新建表空间

请问Oracle中如何在通过创建一个package,然后在package中创建procedure的语法是怎么样的啊先create package,在里面声明procedure
然后再create package body,在package body里面编写procedure的代码即可(相当于create procedure) 。
包里没有create procedure
示例如下:
CREATE OR REPLACE PACKAGE pkg_test IS
PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2);
...
END test;
/
CREATE OR REPLACE PACKAGE BODY pkg_test IS
...
PROCEDURE pro_test(V_OLD IN VARCHAR2,V_NEW IN VARCHAR2) IS
BEGIN
...
END;
...
END pkg_test;
oracle新建包卡住在Oracle数据库中,新建一个包时可能会遇到卡住现象,这个问题一般是由于数据库正在进行大量处理,导致系统繁忙,而造成的 。要解决这个问题,首先可以检查当前的数据库状态 , 看看是否存在大的事务正在进行;其次,可以创建索引来优化数据库查询;最后,也可以更改数据库的并发参数来提升性能 。
用oracle创建一个包 实现表的增删改查 用过程和函数实现 。create or replace package UBS_USER_PKG is
type user_record_type is record
(
userID number(4),
username varchar2(20),
createdate date,
deptID number(4),
gender number(1),
job varchar2(30),
remarks varchar2(200),
birthday date,
jobexperience varchar2(200),
education varchar2(200),
relationship varchar2(200)
);
type user_ref_cursor is ref cursor return user_record_type;
type user_table_type is table of user_record_type index by binary_integer;
procedure user_query(dmlset in out user_ref_cursor);
procedure user_lock(dmlset in out user_table_type);
procedure user_insert(dmlset in out user_table_type);
procedure user_update(dmlset in out user_table_type);
procedure user_delete(dmlset in out user_table_type);
end UBS_USER_PKG;
/
create or replace package body UBS_USER_PKG is
procedure user_query(dmlset in out user_ref_cursor) is
begin
open dmlset for
select
userid,
username,
createdate,
deptid,
gender,
job,
remarks,
birthday,
jobexperience,
education,
relationship
from ubs_user;
end;
procedure user_lock(dmlset in out user_table_type) is
userID_holder number;
begin
select userID into userID_holder from ubs_user where userID=dmlset(1).userID for update;
end;
procedure user_insert(dmlset in out user_table_type) is
begin
insert into ubs_user
(
userid,
username,
createdate,
deptid,
gender,
job,
remarks,
birthday,
jobexperience,
education,
relationship
)
values
(
dmlset(1).userid,
dmlset(1).username,
dmlset(1).createdate,
dmlset(1).gender,
dmlset(1).job,
dmlset(1).remarks,
dmlset(1).birthday,
dmlset(1).jobexperience,
dmlset(1).education,
dmlset(1).education,
dmlset(1).relationship
);
end;
procedure user_update(dmlset in out user_table_type) is
begin
update ubs_user set
如何创建自己的InstantClient包IC介绍
许多人正在使用Oracle Instant Client,它提供一个部署基于OCI、OCCI、JDBC OCI应用容易和快速的方法 。
通过添加更多的工具,Instant Client可以变成一个更加强大的工具 , 如下:
1. tnsping
2. sqlldr
3. tkprf
4. exp/imp
5. OCM
6. 你自己的工具
这样做的主要优点是:
1. 安装是一件轻而易举的事情,只要解压即可完成 。
2. 体积小 , 未压缩100MB到150MB或压缩50MB , 它可以安装在USB盘上
3. 不涉及到SA(软件架构)
比较一个完整的Oracle安装需要大量的磁盘空间,而且还涉及到SA 。
IC需求
1. 一个带有150MB 磁盘空间的Unix/Linux账号:
hadoop@192.168.8.162:/home/hadoop/oracle
2. 安装Oracle 11gR2的相同平台,一个具有读访问权限的账号:
root@192.168.8.192:/u01/product/oracle/11.2.0/db_1
IC安装
从Oracle官方网址下载安装包,
注:请根据操作系统版本下载相应的安装包,这里下载Linux X86-64安装包 。
instantclient-basic-linux.x64-11.2.0.4.0.zip
instantclient-jdbc-linux.x64-11.2.0.4.0.zip
instantclient-sdk-linux.x64-11.2.0.4.0.zip
instantclient-sqlplus-linux.x64-11.2.0.4.0.zip
注:下载Instant Client时需要创建一个Oracle账号才能下载 。
使用SSH客户端使用安装账号登录到服务器,在根目录下创建一个oracle目录:
$mkdir /home/hadoop/oracle
上传所有压缩包或至少basic和sqlplus两个包到你账号的根目录下oracle中 。
解压到当前目录下完成安装 。
$ cd /home/hadoop/oracle
$ unzipinstantclient-basic-linux.x64-11.2.0.4.0.zip
$ unzipinstantclient-sqlplus-linux.x64-11.2.0.4.0.zip
$ unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip
$ unzip instantclient-jdbc-linux.x64-11.2.0.4.0.zip
解压完毕后会在当前目录下生成一个instantclient_11_2目录 。
$ ll /home/hadoop/oracle/instantclient_11_2
IC配置
配置下面的环境变量到你的Shell配置文件中 。
$ vi ~/.bashrc
跳到文件的末尾,添加下面这些环境变量:
export RACLE_IC_HOME=/home/hadoop/oracle/instantclient_11_2
exportORACLE_HOME=$ORACLE_IC_HOME
exportTNS_ADMIN=$ORACLE_IC_HOME
exportPATH=$PATH:$ORACLE_IC_HOME
exportLD_LIBRARY_PATH=$ORACLE_IC_HOME
exportCLASSPATH=$ORACLE_IC_HOME/ojdbc6.jar:./
$ source ~/. bashrc
或 $ . ~/.bashrc
注:如果需要让所有用户都能使用,需要把上面的配置添加/etc/profile中 。
在$ORACLE_IC_HOME目录下创建一个tnsnames.ora文件:
$ vi /home/hadoop/oracle/instantclient_11_2/tnsnames.ora
orcl=(description=(address=(protocol=tcp)(host=192.168.8.161)(port=1521))(connect_data=https://www.04ip.com/post/(server=dedicated)(service_name=wcdma)))

ora =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.8.161)(PORT = 1521)))(CONNECT_DATA =https://www.04ip.com/post/(SERVER =DEDICATED)(SERVICE_NAME = wcdma)))
SQL*Plus
$ sqlplus kqi/kqi@192.168.8.161:1521/wcdma

$ sqlplus kqi/kqi@orcl
SQL*Plus: Release 11.2.0.4.0 Production onThu Nov 20 14:01:49 2014
Copyright (c) 1982, 2013, Oracle.All rights reserved.
Connected to:
Oracle Database 11g Enterprise EditionRelease 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Miningand Real Application Testing options
SQL
ERROR:
ORA-12154: TNS:could not resolve theconnect identifier specified
对于这种问题,排除添加的配置格式错误后 。可能原因是读取的tnsnames.ora路径根本就不是$ORACLE_HOME/network/admin下 。
注:tnsnames.ora文件的查找路径顺序为:
$HOME = $TNS_ADMIN = /etc =$ORACLE_HOME/network/admin/ 。
现在我们已经有一个构建自己的Instant Client包的基础了 。下面是Instant Client的核心文件(位于/home/hadoop/oracle/instantclient_11_2中):
1. libclntsh.so.11.1:客户端代码库
2. libociei.so:OCI InstantClient数据共享库
3. libnnz11.so:安全库
4. libocci.so.11.1:Oracle C调用接口库
5. libocijdbc11.so:JDBC OCI库
6. ojdbc6/5.jar:JDBC驱动(OCI和Thin)
7. orai18n.jar:字符集转换和本地支持库
Tnsping
从安装Oracle的服务器上拷贝tnsping过来,执行命令:
$ cd /home/hadoop/oracle/instantclient_11_2
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/bin/tnsping./
现在让在IC安装服务器上尝试运行下它:
$ tnsping ora
TNS Ping Utility for Linux: Version11.2.0.4.0 - Production on 20-NOV-2014 14:30:21
Copyright (c) 1997, 2013, Oracle.All rights reserved.
Message 3511 not found; No message file forproduct=network, facility=TNSMessage 3512 not found; No message file forproduct=network, facility=TNSMessage 3513 not found; No message file forproduct=network, facility=TNSMessage 3509 not found; No message file forproduct=network, facility=TNS
运行后tnsping抱怨一些文件丢失,更具体的说一个消息文件丢失 。现在,我们把该文件从Oracle安装服务器上拷贝过来,进入到instantclient_11_2目录:
$ mkdir -p network/mesg
$ cd network/mesg/
现在从安装Oracle服务上拷贝tnsus.msb文件到该目录中:
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/network/mesg/tnsus.msb ./
让我们再尝试一次tnsping , 结果如下:
$ tnsping ora
TNS Ping Utility for Linux: Version11.2.0.4.0 - Production on 20-NOV-2014 14:49:54
Copyright (c) 1997, 2013, Oracle.All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION=(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.161)(PORT =1521)))(CONNECT_DATA =https://www.04ip.com/post/(SERVER = DEDICATED)(SERVICE_NAME = wcdma)))
OK (0 msec)
Sqlldr
本节将添加另外一个工具sqlldr 。
首先 , 我们从安装Oracle的服务器上拷贝sqlldr到IC安装目录instantclient_11_2下 。
$ cd /home/hadoop/oracle/instantclient_11_2
$ scproot@192.168.8.192:/u01/product/oracle/11.2.0/db_1/bin/sqlldr ./
尝试运行它:
$ sqlldr
Message 2100 not found; No message file forproduct=RDBMS, facility=ULMessage 2100 not found; No message file forproduct=RDBMS, facility=UL
首先我们需要在instantclient_11_2下创建rdbms/mesg目录 。
$ cd /home/hadoop/oracle/instantclient_11_2
$ mkdir -p rdbms/mesg
$ cd rdbms/mesg
把ORACLE安装目录下rdmsb/mesg/ulus.msb拷贝到当前目录 。
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/rdbms/mesg/ulus.msb./
现在,让我们再次尝试运行它 。
$ sqlldr
SQL*Loader: Release 11.2.0.4.0 - Productionon Thu Nov 20 16:40:10 2014
Copyright (c) 1982, 2011, Oracle and/or itsaffiliates.All rights reserved.
Usage: SQLLDR keyword=value[,keyword=value,...]
Valid Keywords:
Exp/imp
从安装Oracle服务器上拷贝二进制文件过来 。
$ cd /home/hadoop/oracle/instantclient_11_2
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/bin/imp ./
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/bin/exp ./
尝试运行imp和exp,结果如下:
$ imp
Message 100 not found; No message file forproduct=RDBMS, facility=IMP: Release 11.2.0.4.0 - Production on Thu Nov 2017:02:57 2014
Copyright (c) 1982, 2011, Orac
Invalid format of Import utility name
Verify that ORACLE_HOME is properly set
Import terminated unsuccessfully
IMP-00000: Message 0 not found; No messagefile for product=RDBMS, facility=IMP
$ exp
Message 206 not found; No message file forproduct=RDBMS, facility=EXP: Release 11.2.0.4.0 - Production on Thu Nov 20 17:03:392014
Copyright (c) 1982, 2011, Orac
Invalid format of Export utility name
Verify that ORACLE_HOME is properly set
Export terminated unsuccessfully
EXP-00000: Message 0 not found; No messagefile for product=RDBMS, facility=EXP
再从安装Oracle服务器上拷贝rdbms/mesg下的expus.msb和ipus.msb过来 。
$ cd rdbms/mesg/
$ scproot@192.168.8.192:/u01/product/oracle/11.2.0/db_1/rdbms/mesg/impus.msb ./
$ scproot@192.168.8.192:/u01/product/oracle/11.2.0/db_1/rdbms/mesg/expus.msb ./
再次运行imp/exp工具错误提示消失,可以正常运行 。
Tkprof
现在我们继续添加我最喜欢的工具tkprof 。
从安装Oracle的服务器拷贝tkprof到instantclient_11_2目录下 。
$ cd /home/hadoop/oracle/instantclient_11_2
$ scp root@192.168.8.192:/u01/product/oracle/11.2.0/db_1/bin/tkprof ./
$ mkdir -p oracore/mesg/
$ cd oracore/mesg/
$ scproot@192.168.8.192:/u01/product/oracle/11.2.0/db_1/oracore/mesg/lrmus.msb ./
使用示例:
$ tkprof test.trc test.out
Instant Client Bundle
现在,我们已经让所有工具都能正常工作 。简单的使用工具压缩打包instantclient_11_2目录,这样你就获得你自己的Instant Client包 。例如:
$ cd /home/hadoop/oracle
$ tar zcf instantclient_11_2.tar.gzintantclient_11_2
正如你所看到的,打包成的instant client带有tnsping,sqlldr, exp/imp,tkprof工具,这让IC更加的功能强大 。
安装自定义的IC包步骤如下:
1. 上传到服务器上解压缩
2. 修改环境变量
$ vi ~/.bashrc
跳到文件的末尾 , 添加下面这些环境变量:
export ORACLE_IC_HOME=解压目录/instantclient_11_2
export ORACLE_HOME=$ORACLE_IC_HOME
export TNS_ADMIN=$ORACLE_IC_HOME
export PATH=$PATH:$ORACLE_IC_HOME
export LD_LIBRARY_PATH=$ORACLE_IC_HOME
exportCLASSPATH=$ORACLE_IC_HOME/ojdbc6.jar:./
$ source ~/. bashrc
或 $ . ~/.bashrc
3. 添加连接数据库的配置
$ vi $ORACLE_IC_HOME/tnsnames.ora
安装完成,现在就可以使用Instant Client中的工具啦!
Oracle如何创建存储过程和如何调用存储过程【delphi oracle报表解决方案(一)】delphi中调用oracle的存储过程(分带返回游标oracle怎么新建包 , 不返回值两种)
关键字: delphi ,oracle存储过程,游标,返回数据集,报表注oracle怎么新建包:delphi 6oracle 8.1.6一.创建包与包体1.附:建表aaclass为下面作测试用create table aaclass(CID VARCHAR2(50), CNAME VARCHAR2(50), pnumber NUMBER(10,0) );INSERT INTO aaclass values('c1', 'cn1', 10 ) ;
INSERT INTO aaclass values('c2', 'cn2', 40 ) ;
INSERT INTO aaclass values('c1', 'cn3', 30 ) ;
commit;2.建包:CREATE OR REPLACEPACKAGE PKG_JCCTEST1
AStype rc_class is ref cursor;
--求p1,p2的和与差,返回的多个值通过游标返回
procedure GetSubAndSum2(p1 number,p2number ,
ResultCursor out rc_class);
--查询满足条件的数据集,返回数据集通过游标返回
procedure GetClass2(a in number,ResultCursor out rc_class ) ;--往表中插一条记录,不返回结果集时,本人用AdoQuery调用(adodataset好象要求必须返回结果集)
procedure InsertClass( p_cid varchar2 ,p_cname varchar2 ,
p_pnumber number) ;
end PKG_JCCTEST1;3.建包体CREATE OR REPLACEPACKAGE BODY PKG_JCCTEST1
ASprocedure GetSubAndSum2(p1 number,p2number ,
ResultCursor out rc_class)
IS
BEGIN
open ResultCursor for
select p1-p2 as "sum", p1 p2 as "sub" from dual;
END ;
procedure GetClass2(a in number,ResultCursor out rc_class )
is
begin open ResultCursor for
select aaclass.* from aaclass where pnumber a;end ;procedure InsertClass( p_cid varchar2 ,p_cname varchar2 ,
p_pnumber number)
is
begin
insert into aaclass values(p_cid,p_cname,p_pnumber) ;
--commit;
end ;二.在delphi中利用AdoDataSet调用上述第一个存储过程
1.利用AdoConnection1连接数据库(驱动为 oracle Provider for OLE DB) ,
**并在连接字符串中加入这一节:PLSQLRSet=1; 如下所示:
Provider=OraOLEDB.Oracle.1;Password=KXD;Persist Security Info=True;User ID=KXD;Data Source=TEST3;PLSQLRSet=12.在窗体上加AdoDataSet1 指明连接为上述AdoConnection1,下面可以放一个按钮,单击按钮就能调用第一步中创建的包过程,并返回数据集 。代码如下所示:
procedure TForm1.Button1Click(Sender: TObject);
var
AResult , BResult : integer;
begin
ADODataSet1.Close ;
ADODataSet1.CommandType :=cmdText ;
ADODataSet1.Parameters.Clear ;//***利用call方法调用oracle过程时,参数必须由?来传,即使你要传的参数为常理
//输出游标的参数不需要指定!!!!!!,本来此函数带三个参数,oracle怎么新建包我们这里只需要传两个参数.
ADODataSet1.CommandText := '{call PKG_JCCTEST1.GetSubAndSum2(?,?)}' ;//***C 顺序有关,createparam必须放在commandtext赋值语句之后.// 创建第一个参数,对应call中的第一个?,ftinteger为类型,10为长度 , 45为传入的实参值
ADODataSet1.Parameters.CreateParameter('p1',ftinteger,pdinput,10,45);
//创建第二个参数,根据createparameter的顺序 自动与call中的第二个参数对应
ADODataSet1.Parameters.CreateParameter('p2',ftinteger,pdinput,10,4);//下面调用ADODataSet1 的open方法,返回数据集(对应包过程的游标)
ADODataSet1.Open ;//根据存储过程,数据集只有一条记录,所以不需要用while do 来遍历数据集,直接取数据了//此处的字段名根据包过程中的返回游标 对应的字段名来取
//定义的存储过程返回游标如:open ResultCursor for
//select p1-p2 as "sum", p1 p2 as "sub" from dual;
//把对应的字段值取出来即可
AResult := ADODataSet1.Fields.FieldByName('sub').Value ;
BResult := ADODataSet1.Fields.FieldByName('sum').Value ;//显示结果
showmessage(inttostr(AResult)) ;
showmessage(inttostr(BResult)) ;end;
三.在delphi中利用AdoDataSet调用上述第二个存储过程
还是利用上述的AdoDataSet1来调用第二个存储过程,无需任何改动,加第二个按钮,单击时代码如下:procedure TForm1.Button2Click(Sender: TObject);
begin
ADODataSet1.Close ;
ADODataSet1.CommandType :=cmdText ;
ADODataSet1.Parameters.Clear ;//***利用call方法调用oracle过程时,参数必须由?来传,即使你要传的参数为常理
//输出游标的参数不需要指定!!!!!!,本来此函数带两个参数,我们这里只需要传一个参数.
ADODataSet1.CommandText := '{call PKG_JCCTEST1.GetClass2(?)}' ;//***C 顺序有关 , createparam必须放在commandtext赋值语句之后.// 创建第一个参数 , 对应call中的第一个?,ftinteger为类型,10为长度,20为传入的实参值
ADODataSet1.Parameters.CreateParameter('p1',ftinteger,pdinput,10,20);
//下面调用ADODataSet1 的open方法,返回数据集(对应包过程的游标)
ADODataSet1.Open ;while not ADODataSet1.Eof do
begin
showmessage('CID : ' string(ADODataSet1.FieldByName('CID').Value)
'--CNAME :'string(ADODataSet1.FieldByName('CNAME').Value)
'--PNUMBER :'string(ADODataSet1.FieldByName('PNUMBER').Value)
) ;
ADODataSet1.Next ;
end ;
end;四 利用adoquery调用第三个过程,不返回数据集的procedure TForm1.Button3Click(Sender: TObject);
begin
AdoQuery1.Close ;
AdoQuery1.Parameters.Clear ;AdoQuery1.SQL.Clear ;AdoQuery1.SQL.Add('{call PKG_JCCTEST1.GetSubAndSum2(?,?)}') ;
AdoQuery1.Parameters.CreateParameter('P1',ftstring,pdinput, 50,'c11') ;
AdoQuery1.Parameters.CreateParameter('P2',ftstring,pdinput, 50,'cn11') ;
AdoQuery1.Parameters.CreateParameter('P3',ftinteger,pdinput, 50,25) ;AdoQuery1.ExecSQL ;
end;
五 利用adoquery调用第一个过程,返回数据集的.
procedure TForm1.Button4Click(Sender: TObject);
begin
AdoQuery1.Close ;
AdoQuery1.Parameters.Clear ;AdoQuery1.SQL.Clear ;AdoQuery1.SQL.Add('{call PKG_JCCTEST1.GetSubAndSum2(?,?)}') ;
AdoQuery1.Parameters.CreateParameter('P1',ftinteger,pdinput, 50,25) ;
AdoQuery1.Parameters.CreateParameter('P2',ftinteger,pdinput, 50,22) ;AdoQuery1.Open;Showmessage(string( AdoQuery1.FieldByName('sub').Value) '-'
string( AdoQuery1.FieldByName('sum').Value));
end;六.关于三层体系的此类问题两层的解决了,三层类似.
中间层用tadodataset 或tadoquery ( tdatasetprovider),中间层的adoconnection的连接字符串加上plsqlRset=1;
客户端用clientdataset ,大同小异 , 举例如下:begin
//调用相应的过程
ClientDataSet1.Close ;
ClientDataSet1.Params.Clear ;ClientDataSet1.CommandText := '{call PackageName.ProcedureName(?,?)}' ;
ClientDataSet1.Params.CreateParam(ftInteger , 'ParamName1', ptInput) ;
ClientDataSet1.Open ;
end ;
本文来自CSDN博客 , 转载请标明出处:
oracle怎么创建数据库实例oracle手动创建数据库步骤如下所示:
1.编写初始化参数文件
2.设置操作系统环境变量
3.创建实例
4.以管理员身份连接数据库
5.启动实例
6.create database 创建数据库
7.运行数据字典脚本
8.Oracle的网络配置 (客户端连接到服务端)
初始化参数文件
从%ORACLE_HOME%\admin\sample\pfile从复制initsmpl.ora文件,并黏贴到$ORACLE_HOME%\database目录下,改名为initsid假设改为initzhouyt.ora.(init为文本文件)
对initzhouyt.ora内容进行修改
新增参数
* instance_name=zhouyt
* db_domain=hdu.edu.cn
修改参数
* db_name=zhouyt
* db_block_size=8192(8kM)
* remote_login_passwordfile=exclusive
操作系统环境变量
设置操作系统环境变量oracle_sid指向数据库实例的名称
set oracle_sid=zhouyt
该命令在window dos窗口下只对当前有效,当关闭窗口则失效,想要一直有效,则需要在系统环境变量中修改
创建实例
实用工具oradim使用
在DOS窗口输入命令 oradim -new -sid zhouyt -intpwd sys123(sys的密码,sys是管理员) -startmode auto
sid是Oracle在操作系统中的“身份证号码”
管理员身份连接数据库
sqlplus实用工具登录数据库
在DOS命令输入sqlplus/nolog 只是登录状态
以数据库管理员身份连接数据库
在上面的基础上输入命令 connect sys/sys123 as sysdba
因为以 数据库管理员身份 登录可以 安装数据库
启动实例
将文本初始化参数文件pfile转化为二进制初始化参数文件spfile
因为数据库启动需要找到配置文件,默认寻找二进制文件 , 也可以手动启动文本文件,那这一步就不需要了
输入命令 create spfile from pfile; (将会报错,因为文本文件比较老相对于Oracle 10g), 这个时候我们需要修改配置文件initzhouyt.ora
这个时候在%ORACLE_HOME%\database文件下会生成SPFILEZHOUYT.ora文件
以nomount形式启动实例
命令 startup nomount,将会出现错误,当我们按照提示修改文本文件以后,如果我们还是按照startup nomount来启动的话,我们要生成相应的二进制文件来覆盖旧的二进制文件
并注释%seed_control%
create databae 创建数据库
创建数据库脚本
【oracle怎么新建包 oracle怎么新建表空间】三个文件
控制文件
数据文件
重做日志文件
create database zhouyt
datafile
'C:\oracle\product\10.2.0\db_2\zhouyt\system_01.dbf' size 100m
Autoextend on next 10m maxsize unlimited
sysaux datafile
'C:\oracle\product\10.2.0\db_2\zhouyt\systemaux_01.dbf' size 60m
Autoextend on next 10m maxsize unlimited
logfile
group 1 ('C:\oracle\product\10.2.0\db_2\zhouyt\log_1_01.rdo') size 10m,
group 2 ('C:\oracle\product\10.2.0\db_2\zhouyt\log_2_01.rdo') size 10m
character set zhs16gbk;
需要确保目录文件"db_2\zhouyt"存在
生成两个数据文件和两个重做日志文件,那么控制文件呢?
运行数据字典脚本
__数据库创建后,系统会生成两个管理员用户sys和system
运行3个数据字典脚本
catalog.sql 创建系统常用的数据字典视图和同义词 (sys登录);
catproc.sql 建立PL/SQL功能的使用环境 , 还创建几个PL/SQL包用于扩展RDBMS功能 (sys登录);
pupbld.sql 使用SQL*PLUS环境时需要 (system登录)
在命令行输入@ 加脚本文件的绝对路径
第二个脚本过程和第一个一样
执行第三个脚本需要切换到system用户
connect system/manager
@ C:\oracle\product\10.2.0\db_2\sqlplus\admin\pupbld.sql
创建scott模式
@ C:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\scott.sql
关于oracle怎么新建包和oracle怎么新建表空间的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读