




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章oracle数据库概述理论部分本章目标掌握Oracle安装掌握连接到Oracle掌握数据库的创建掌握用户的创建和权限授予掌握数据库表的创建掌握序列的创建和使用Oracle简介2-1Oracle(甲骨文)公司1977年,三人合伙创办(SoftwareDevelopmentLaboratories,SDL)1979年,更名为RelationalSoftwareInc.,RSI1983年,为了突出核心产品,RSI更名为Oracle2002年04月26日,启用“甲骨文”作为中文注册商标Oracle简介2-2Oracle数据库管理系统Oracle公司的核心产品目前最流行的数据库主要版本Oracle8i/9i(internet)、Oracle10g/11g(grid)基于C/S系统结构Oracle基本概念2-1数据库磁盘上存储的数据的集合在物理上表现为数据文件、日志文件和控制文件等在逻辑上以表空间形式存在必须首先创建数据库,然后才能使用Oracle数据库实例每个启动的数据库都对应一个数据库实例,由这个实例来访问和控制数据库为了运行数据库,Oracle系统所运行的所有进程和分配的内存结构的组合体数据库:永久的,硬盘上数据库实例:临时的,内存中Oracle基本概念2-2数据文件扩展名是.DBF,用于存储数据库数据的文件数据库表和数据文件不存在一对一对应关系控制文件扩展名是.CTL,是数据库启动及运行所必需的文件默认包含3个控制文件,各个控制文件内容相同日志文件扩展名是.LOG,它记录了对数据的所有更改信息多个日志文件组之间循环使用表空间每个Oracle数据库都是由若干个表空间构成,用户在数据库中建立的所有内容都被存储到表空间中创建数据库时会自动创建若干表空间数据库物理结构数据库逻辑结构安装Oracle此处选择“高级安装”此处选择“企业版”建议保持默认的安装路径层次结构会自动进行检查建议选择“创建数据库”对前面选择内容的一个总结开始复制文件提供了多个Oracle工具的访问路径本章选择此项创建数据库和用户创建数据库JBITDB,创建用户epet,该用户可以登录数据库并进行操作可以在安装Oracle软件时、安装Oracle软件后创建数据库。可以通过图形界面和SQL语句实现每个数据库都有SYS和SYSTEM两个默认用户,都具有创建用户权限最好通过CREATETABLESPACE命令为每个用户创建自己的表空间通过CREATEUSER命令来创建用户epet通过GRANT命令给用户epet赋予相应权限创建数据库2-1启动DBCA(数据库配置助手)选择“创建数据库”指定数据库名和数据库实例名为四个解锁用户指定密码包括SYS、SYSTEM用户指定创建选项记住这些信息关键步骤创建数据库2-2Windows下,安装Oracle10g后生成多个服务通过选择“控制面板”→“管理工具”→“服务”,打开“服务”窗口,可以看到Oracle服务OracleService<SID>:数据库实例服务OracleOraDb10g_hom1TNSListener:数据库监听服务OracleDBConsoles<SID>:企业管理器服务OracleOraDb10g_hom1iSQL*Plus:iSQL*Plus服务操作演示:查看Oracle服务登录管理后台2-1SYS和SYSTEM用户SYS和SYSTEM用户都是Oracle的系统用户,它们都使用SYSTEM表空间,SYS拥有更大的权限SYS用户SYSTEM用户地位Oracle的一个超级用户Oracle默认的系统管理员,拥有DBA权限作用主要用来维护系统信息和管理实例通常用来管理Oracle数据库的用户、权限和存储等登录身份只能以SYSDBA或SYSOPER角色登录只能以Normal方式登录登录管理后台2-2通过SQL*Plus方式连接通过iSQL*Plus方式连接通过PL/SQLDeveloper方式连接通过Oracle企业管理器对Oracle进行全面管理操作演示:通过多种方式登录管理后台创建表空间基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间通过CREATETABLESPACE命令创建表空间CREATETABLESPACEepet_tablespaceDATAFILE'E:\oracle\product\10.2.0\oradata\JBITDB\EPET.DBF'SIZE100M;CREATETABLESPACEepet_tablespaceDATAFILE'E:\oracle\product\10.2.0\oradata\JBITDB\EPET.DBF'SIZE100MAUTOEXTENDONNEXT32MMAXSIZEUNLIMITEDLOGGINGEXTENTMANAGEMENTLOCALSEGMENTSPACEMANAGEMENTAUTO;创建用户CREATEUSERuserIDENTIFIEDBYpassword[DEFAULTTABLESPACEtablespace][TEMPORARYTABLESPACEtablespace]必须指定用户名和密码可以为用户指定默认表空间或临时表空间CREATEUSERepetIDENTIFIEDBYbdqnDEFAULTTABLESPACEepet_tablespace;权限和角色2-1权限指执行特定类型SQL命令或访问其他对象的权利系统权限和对象权限系统权限允许用户执行某些数据库操作对象权限允许用户对某一特定对象执行特定的操作角色是具有名称的一组权限的组合常用系统预定义角色CONNECT:临时用户RESOURCE:更为可靠和正式的用户DBA:数据库管理员角色,拥有管理数据库的最高权限为了简化权限管理,引入了角色的概念用户必须赋予相应的权限权限和角色2-2#分配权限或角色GRANTprivilegesorroleTOuser;#撤销权限或角色REVOKEprivilegesorroleFROMuser;#把CONNECT、RESOURCE角色授予用户epetGRANTCONNECT,RESOURCETOepet;#撤销用户epet的RESOURCE角色REVOKERESOURCEFROMepet;#允许用户查看EMP表中的记录GRANTSELECTONempTOepet;#允许用户更新EMP表中的记录GRANTUPDATEON
empTOepet;创建数据库表7-1完成如下建表要求主人表master(id,loginid,password,status)宠物种类表pet_type(id,name,status)宠物表pet(id,master_id,name,type_id,health,love,prop1,prop2,prop3,adopt_time,status)需要根据业务需求确定各个字段的数据类型可以通过CREATETABLE命令实现,也可以通过图形界面来完成创建数据库表7-2Oracle数据类型字符数据类型CHAR:存储固定长度的字符串VARCHAR2:存储可变长度的字符串NCHAR和NVARCHAR2:存储Unicode字符集类型数值数据类型NUMBER:存储整数和浮点数,格式为NUMBER(p,s)column_nameNUMBER{p=38,s=0}column_nameNUMBER(p){整数}column_nameNUMBER(p,s){浮点数}不建议使用VARCHAR、INTEGER、FLOAT、DOUBLE等类型创建数据库表7-3Oracle数据类型日期时间数据类型DATE:存储日期和时间数据TIMESTAMP:比DATE更精确LOB数据类型BLOB:存储二进制对象,如图像、音频和视频文件CLOB:存储字符格式的大型对象创建数据库表7-4通过CREATETABLE命令创建数据库表CREATETABLEmaster( idNUMBER(11,0)
PRIMARYKEY, loginidNVARCHAR2(50)NOTNULL, passwordNVARCHAR2(20)NOTNULL, statusCHAR(1)DEFAULT1NOTNULL
);CREATETABLEpet_type( idNUMBER(11)NOTNULL, nameNVARCHAR2(50)NOTNULL, statusCHAR(1)DEFAULT1NOTNULL
);ALTERTABLEpet_typeADDCONSTRAINTpet_type_pkPRIMARYKEY(id);创建主人表创建宠物主人表创建数据库表7-5CREATETABLEpet(idNUMBER(11),master_idNUMBER(11)NOTNULL,nameNVARCHAR2(50),type_idNUMBER(11)NOTNULL,healthNUMBER(11)DEFAULT100NOTNULL,loveNUMBER(11)DEFAULT100NOTNULL,prop1NVARCHAR2(100),prop2NVARCHAR2(100),prop3NVARCHAR2(100),adopt_timeDATENOTNULL,statusCHAR(1)DEFAULT1NOTNULL,
CONSTRAINTpet_pkPRIMARYKEY(id),
CONSTRAINTm_fkFOREIGNKEY(m_id)REFERENCESmaster(id),
CONSTRAINTt_fkFOREIGNKEY(type_id)REFERENCESpet_type(id));创建宠物表创建数据库表7-6COMMENTONTABLEpetIS'宠物';COMMENTONCOLUMNIS'宠物昵称';COMMENTONCOLUMNpet.healthIS'宠物健康值';…指定表和字段的注释演示示例:通过SQL命令创建数据库表创建数据库表7-7通过PL/SQLDeveloper工具创建数据库表操作演示:通过图形界面创建数据库表创建和使用序列4-1录入数据库记录时,表的ID字段能否实现自动编号功能呢?Oracle没有类似SQLServer中的identity来定义主键自增属性可以定义一个序列sequence,然后在插入数据时取序列中的下一个值即可创建和使用序列4-2CREATESEQUENCEseq_name[STARTWITHstart][INCREMENTBYincrement][MINVALUEminvalue|NOMINVALUE][MAXVALUEmaxvalue|NOMAXVALUE][CYCLE|NOCYCLE][CACHEcache|NOCACHE][ORDER|NOORDER]必须指定序列名其余各项均有默认值创建和使用序列4-3#使用序列INSERTINTOmasterVALUES(master_seq.nextval,'lkl','lkl',1);INSERTINTOmaster
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省楚雄州2022-2023学年高二下学期语文期末试卷(含答案)
- 2025农田地承包合同样本
- 2025各类加工合同范本
- 2025标准汽车买卖合同范本
- 2025如何认定农村土地承包合同的效力
- 2025建筑施工设备租赁合同范本
- 2025广州房屋租赁合同范本2
- 2025简约农业合作合同范本
- 《慢性便秘解析与自我管理》课件
- 《探索人生意义》课件
- 辛弃疾词《青玉案·元夕》
- 公路桥梁塔柱施工平台及通道安全技术要求
- 糖尿病临床诊疗指南:基层实践
- 抖音房产直播敏感词汇表
- (高清版)JTGT 3383-01-2020 公路通信及电力管道设计规范
- 国际公法学马工程全套教学课件
- 微专题地质地貌的形成过程(解析)
- YY/T 0655-2024干式化学分析仪
- 中华民族共同体概论课件专家版2第二讲 树立正确的中华民族历史观
- 四年级四年级下册阅读理解100篇及答案经典
- 中职对口升学复习资料:《汽车机械基础》试题库+答案
评论
0/150
提交评论