1 管理员身份进入CMD环境,执行DBCA命令,在弹出窗口的引导中,完成实例创建
2 如果在创建过程中没有选择适当的字符集(最好采用默认字符集),如下图所示,在进入PLSQL DEVELOPER的时候,出现了警告信息
需要修改注册表来更改客户端的编码,网上说路径为:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb10g_home1
但实际上我最终找到的路径为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\KEY_OraDb10g_home1
select userenv('language') from dual; 结果为SIMPLIFIED CHINESE_CHINA.UTF8
所以将注册表修改为SIMPLIFIED CHINESE_CHINA.UTF8,但该问题很难完全解决,即使这里的警告信息消失,但是PLSQL DEVELOPER工具的错误信息仍然是乱码,因而最好创建数据库实例时就使用默认字符集
3.创建表空间
CREATE TABLESPACE "DATA" DATAFILE
'D:\IDE\ORACLE\PRODUCT\10.2.0\ORADATA\MYDEBUG\oradata01.dbf' SIZE 512M
AUTOEXTEND ON NEXT 8M MAXSIZE 1024M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO
稍作解释(参考自http://blog.chinaunix.net/uid-20802110-id-2105656.html):
LOGGING :
- 这个子句声明这个表空间上所有的用户对象的日志属性(缺省是logging),
- 包括表,索引,分区,物化视图,物化视图上的索引,分区
online|offline
- 改变表空间的状态。online使表空间创建后立即有效.这是缺省值.
- offline使表空间创建后无效.这个值,可以从dba_tablespace中得到。
PERMANENT|TEMPORARY
- 指出表空间的属性,是永久表空间还是临时表空间。
- 永久表空间存放的是永久对象,临时表空间存放的是session生命期中存在的临时对象。
- 这个参数生成的临时表空间创建后一直都是字典管理,不能使用extent management local选项。
- 如果要创建本地管理表空间,必须使用create temporary tablespace
- 注意,声明了这个参数后,不能声明block size
BLOCKSIZE integer [k]
- 这个参数可以设定一个不标准的块的大小。如果要设置这个参数,必须设置db_block_size,
- 至少一个db_nk_block_size,并且声明的integer的值必须等于db_nk_block_size.
- 注意:在临时表空间不能设置这个参数。
4.创建角色,用户,分配权限,建表
CREATE TABLESPACE "DATA" DATAFILE
'D:\IDE\ORACLE\PRODUCT\10.2.0\ORADATA\blog\oradata01.dbf' SIZE 512M
AUTOEXTEND ON NEXT 8M MAXSIZE 1024M
LOGGING ONLINE PERMANENT BLOCKSIZE 8192
EXTENT MANAGEMENT LOCAL AUTOALLOCATE SEGMENT SPACE MANAGEMENT AUTO Create role manager;
grant connect,resource,unlimited tablespace to manager;
create user heben identified by heben default tablespace data;
grant manager to heben
create table article
(
articleid number(10) not null,
articletitle varchar2(100 char),
authorid number(10) not null,
content blob,
datepublish date,
datelastmaint date default sysdate not null,
articlecatcd varchar2(4 char)
);
建表时可能会报错
grant connect,resource to heben; 解决问题