分享

ORACLE建库过程与操作

 krrish 2010-01-18
ORACLE建库过程与操作
1. 准备建库文件
  
  建立数据库文件
  
  建立表空间文件
  
  建立数据库用户
  
  建立数据库表
  
  建立触发器
  
  建立存储过程
  
  建立序列
  
  2. 建立数据库
  
  启动ORACLE 数据库($ svrmgrl或者svrmgrm)
  
  用internal用户登录到SQL * DBA($svrmgrl>connect internal)
  
  create database CIMS
  exit
  3. 建立数据库环境
  
  用系统用户(system)登录到ORACLE数据库(sqlplus system/****)
  
  start database_env.sql
  commit
  quit
  可以通过客户端的图形界面工具建立数据库环境
  
  4. 建立数据库实体
  
  建立建库批命令(文本)文件Tcreate.sql(例如工具S-designer)
  
  用一般用户lyj(可以自己定义)登录到ORACLE数据库(sqlplus lyj/****)
  
  spool Tcreate _error.bat.lst (用于记录建库错误信息)
  start Tcreate.sql
  commit
  quit
  5. 启动数据库
  
  用internal用户登录(connect internal)
  
  startup CIMS PFILE=initCIMS.ora
  exit
  6.注意事项
  
  每个表只能存一个primary key约束(即:表中只有单一主键约束,primary key约束可以置于相应的列约束上;表中有多个字段作为复合主键时,primary key只能置于表约束上)
  无论是单一主键,还是复合主键,均可用primary key作为表约束,或为unique作为表约束
  primary key (字段,字段,…..)
  
  unique (字段,字段,…….)
  
  在其它数据库用户下访问数据库对象(表、视图等)所有者的资源的方法
  例:表cable是oracle的system用户建立的,oracle的sys用户要访问cable表的方法为: 命令 system.cable (具有相应特权)
  
  注意:只要建库命令文件在/usr/oracle目录下,以oracle的任何具有建表特权的用户登录进入oracle数据库,均可用 start Tcreate.sql建库,但是数据库的所有者为建库的用户。同一个建库命令文件,由不同的数据库用户用start命令运行后,将在oracle中建立不同的数据库,对象相同但是属主不同。
  
  在用批文件*.sql建库时,错误信息可以转储到某个文件中,以便用户修改错误
  SQL> spool *.lst (SQLPLUS输出信息转储到*.lst)
  
  SQL> start *.sql
  
  SQL> spool off (停止转储操作)
  
  建库时,reference参照的表应置于前面,要删除用户的所有对象及用户,可用命令 SQL>drop user cascade;
  用批文件建立数据库时,如果有插入或修改数据库操作,一定要commit。
  在进行表的删除时,如果表之间有关联,泽用下述选项:
  SQL> drop table cascade constraints;
  
  建库时,对于复合主键的参考,使用如下方法作为表约束:
  foreign key (fk1,fk2,…)
  
  references table-name (pk1, pk2,…)
  
  建库时,对于相互有主/外键关系的表,使用如下方法实现:
  先建立无主/外键相互约束的表;
  后用alter方法修改表间的约束关系
  在插入数据时,有主/外键关联的情况,应先插入主键所在的表,否则,外键所在表不能插入值

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多