使用java实现面向对象编程_第1页
使用java实现面向对象编程_第2页
使用java实现面向对象编程_第3页
使用java实现面向对象编程_第4页
使用java实现面向对象编程_第5页
免费预览已结束,剩余34页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle基础第十一章回顾与作业点评JDBC的主要作用是什么?JDBC访问数据库的步骤有哪些?PreparedStatement与Statement相比,具有什么优势?预习检查简述你对Oracle的认识有哪些?SYS和SYSTEM中,哪个用户权限更大?为用户分配和撤销权限的命令是什么?Oracle常用的数据类型有哪几类?本章任务使用Oracle创建数据库和用户使用Oracle创建表并插入数据本章目标掌握Oracle安装掌握连接到Oracle 掌握数据库的创建掌握用户的创建和权限授予掌握数据库表的创建掌握序列的创建和使用Oracle简介2-1Oracle(甲骨文)公司1977年,三人合伙创办(

2、Software Development Laboratories,SDL)1979年,更名为Relational Software Inc.,RSI1983年,为了突出核心产品 ,RSI更名为Oracle2002年04月26日,启用“甲骨文”作为中文注册商标Oracle简介2-2Oracle数据库管理系统Oracle公司的核心产品 目前最流行的数据库主要版本Oracle8i/9i(internet)、Oracle10g/11g(grid) 基于C/S系统结构 Oracle基本概念2-1数据库 磁盘上存储的数据的集合在物理上表现为数据文件、日志文件和控制文件等在逻辑上以表空间形式存在必须首先创

3、建数据库,然后才能使用Oracle 数据库实例 每个启动的数据库都对应一个数据库实例,由这个实例来访问和控制数据库为了运行数据库,Oracle系统所运行的所有进程和分配的内存结构的组合体数据库: 永久的,硬盘上数据库实例:临时的,内存中Oracle基本概念2-2数据文件 扩展名是.DBF,用于存储数据库数据的文件数据库表和数据文件不存在一对一对应关系控制文件 扩展名是.CTL,是数据库启动及运行所必需的文件默认包含3个控制文件,各个控制文件内容相同日志文件 扩展名是.LOG,它记录了对数据的所有更改信息多个日志文件组之间循环使用表空间每个Oracle数据库都是由若干个表空间构成,用户在数据库中

4、建立的所有内容都被存储到表空间中创建数据库时会自动创建若干表空间数据库物理结构 数据库逻辑结构 安装Oracle此处选择“高级安装”此处选择“企业版”建议保持默认的安装路径层次结构会自动进行检查建议选择“创建数据库”对前面选择内容的一个总结开始复制文件提供了多个Oracle工具的访问路径本章选择此项创建数据库和用户 创建数据库JBITDB,创建用户epet,该用户可以登录数据库并进行操作 可以在安装Oracle软件时、安装Oracle软件后创建数据库。可以通过图形界面和SQL语句实现每个数据库都有SYS和SYSTEM两个默认用户,都具有创建用户权限最好通过CREATE TABLESPACE命令

5、为每个用户创建自己的表空间通过CREATE USER命令来创建用户epet通过GRANT命令给用户epet赋予相应权限 创建数据库2-1启动DBCA(数据库配置助手)选择“创建数据库”指定数据库名和数据库实例名为四个解锁用户指定密码包括SYS、SYSTEM用户指定创建选项记住这些信息关键步骤创建数据库2-2Windows下,安装Oracle 10g后生成多个服务通过选择“控制面板”“管理工具”“服务”,打开“服务”窗口,可以看到Oracle服务 OracleService:数据库实例服务OracleOraDb10g_hom1TNSListener :数据库监听服务OracleDBConsole

6、s:企业管理器服务OracleOraDb10g_hom1iSQL*Plus:iSQL*Plus服务操作演示: 查看Oracle服务登录管理后台2-1 SYS和SYSTEM用户 SYS和SYSTEM用户都是Oracle 的系统用户,它们都使用SYSTEM表空间,SYS拥有更大的权限SYS用户SYSTEM用户地位Oracle的一个超级用户Oracle默认的系统管理员,拥有DBA权限作用主要用来维护系统信息和管理实例 通常用来管理Oracle数据库的用户、权限和存储等登录身份只能以SYSDBA或SYSOPER角色登录只能以Normal方式登录登录管理后台2-2通过SQL*Plus方式连接 通过iSQ

7、L*Plus方式连接通过PL/SQL Developer方式连接通过Oracle企业管理器对Oracle进行全面管理操作演示: 通过多种方式登录管理后台创建表空间基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间通过CREATE TABLESPACE命令创建表空间CREATE TABLESPACE epet_tablespaceDATAFILE E:oracleproduct10.2.0oradataJBITDBEPET.DBFSIZE 100M; CREATE TABLESPACE epet_tablespaceDATAFILE E:oracleproduct10.2.0orad

8、ataJBITDBEPET.DBFSIZE 100MAUTOEXTEND ON NEXT 32M MAXSIZE UNLIMITEDLOGGINGEXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO; 创建用户CREATE USER userIDENTIFIED BY passwordDEFAULT TABLESPACE tablespaceTEMPORARY TABLESPACE tablespace必须指定用户名和密码可以为用户指定默认表空间或临时表空间CREATE USER epetIDENTIFIED BY bdqnDEFAULT T

9、ABLESPACE epet_tablespace;权限和角色2-1 权限指执行特定类型SQL 命令或访问其他对象的权利系统权限和对象权限系统权限允许用户执行某些数据库操作对象权限允许用户对某一特定对象执行特定的操作角色是具有名称的一组权限的组合常用系统预定义角色CONNECT:临时用户RESOURCE:更为可靠和正式的用户DBA:数据库管理员角色,拥有管理数据库的最高权限为了简化权限管理,引入了角色的概念用户必须赋予相应的权限权限和角色2-2#分配权限或角色GRANT privileges or role TO user;#撤销权限或角色REVOKE privileges or role F

10、ROM user;#把CONNECT、RESOURCE角色授予用户epetGRANT CONNECT,RESOURCE TO epet;#撤销用户epet的RESOURCE角色REVOKE RESOURCE FROM epet; #允许用户查看 EMP 表中的记录GRANT SELECT ON emp TO epet;#允许用户更新 EMP 表中的记录GRANT UPDATE ON emp TO epet;练习创建数据库需求说明:在Oracle中使用DBCA创建数据库JBITDB,数据库实例SID为sjbitdb完成时间:10分钟练习创建用户 需求说明:创建用户epet,默认表空间EPET-T

11、ABLESPACE,授予CONNECT和RESOURCE角色完成时间:10分钟共性问题集中讲解常见调试问题及解决办法代码规范问题共性问题集中讲解创建数据库表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)需要根据业务需求确定各个字段的数据类型可以通过CREATE TABLE命令实现,也可以通过图形界面来完成创建数据库表7-2O

12、racle数据类型字符数据类型 CHAR:存储固定长度的字符串 VARCHAR2 :存储可变长度的字符串 NCHAR和NVARCHAR2 :存储Unicode字符集类型 数值数据类型NUMBER:存储整数和浮点数,格式为NUMBER(p, s)column_name NUMBER p = 38, s = 0column_name NUMBER (p) 整数column_name NUMBER (p, s) 浮点数 不建议使用VARCHAR、 INTEGER、FLOAT、DOUBLE等类型创建数据库表7-3Oracle数据类型日期时间数据类型DATE:存储日期和时间数据 TIMESTAMP:比D

13、ATE更精确 LOB数据类型BLOB:存储二进制对象,如图像、音频和视频文件CLOB:存储字符格式的大型对象 创建数据库表7-4通过CREATE TABLE命令创建数据库表 CREATE TABLE master( id NUMBER(11,0) PRIMARY KEY, loginid NVARCHAR2(50) NOT NULL, password NVARCHAR2(20) NOT NULL, status CHAR(1) DEFAULT 1 NOT NULL );CREATE TABLE pet_type( id NUMBER(11) NOT NULL,name NVARCHAR2(5

14、0) NOT NULL, status CHAR(1) DEFAULT 1 NOT NULL );ALTER TABLE pet_type ADD CONSTRAINT pet_type_pk PRIMARY KEY (id);创建主人表创建宠物主人表创建数据库表7-5CREATE TABLE pet( id NUMBER (11), master_id NUMBER (11) NOT NULL, name NVARCHAR2 (50), type_id NUMBER (11) NOT NULL, health NUMBER (11) DEFAULT 100 NOT NULL, love NU

15、MBER (11) DEFAULT 100 NOT NULL, prop1 NVARCHAR2 (100), prop2 NVARCHAR2 (100), prop3 NVARCHAR2 (100), adopt_time DATE NOT NULL, status CHAR(1) DEFAULT 1 NOT NULL, CONSTRAINT pet_pk PRIMARY KEY(id), CONSTRAINT m_fk FOREIGN KEY (m_id) REFERENCES master(id), CONSTRAINT t_fk FOREIGN KEY (type_id) REFEREN

16、CES pet_type(id) );创建宠物表创建数据库表7-6COMMENT ON TABLE pet IS 宠物;COMMENT ON COLUMN IS 宠物昵称;COMMENT ON COLUMN pet.health IS 宠物健康值;指定表和字段的注释演示示例:通过SQL命令创建数据库表创建数据库表7-7通过PL/SQL Developer工具创建数据库表操作演示: 通过图形界面创建数据库表创建和使用序列4-1 录入数据库记录时,表的ID字段能否实现自动编号功能呢? Oracle没有类似SQL Server中的identity来定义主键自增属性可以定义一个序列s

17、equence,然后在插入数据时取序列中的下一个值即可创建和使用序列4-2CREATE SEQUENCE seq_nameSTART WITH startINCREMENT BY incrementMINVALUE minvalue|NOMINVALUEMAXVALUE maxvalue|NOMAXVALUECYCLE|NOCYCLECACHE cache|NOCACHEORDER|NOORDER必须指定序列名其余各项均有默认值创建和使用序列4-3#使用序列INSERT INTO master VALUES(master_seq.nextval,lkl,lkl,1);INSERT INTO m

18、aster VALUES(master_seq.nextval,lyg,801,1);SELECT master_seq.currval FROM dual; /查看序列的当前值SELECT master_seq.nextval FROM dual; /查看序列的下一个值#创建序列CREATE SEQUENCE master_seqSTART WITH 1INCREMENT BY 1NOMAXVALUECACHE 10;NEXTVAL将返回序列的下一个值CURRVAL将返回序列的当前值初始值为1,步长为1,无最大值,在缓存中保存预分配10个值创建和使用序列4-4ALTER SEQUENCE master_seqINCREMENT BY 5MAXVALUE 100000NOCYCLENOCACHE;INSERT INTO master VALUES(master_seq.nextval,xhb,xho,2);SELECT * FROM master;DROP SEQUENCE master_seq;修改序列删除序列演示示例:创建和使用序列练习创建数据库表需求说明:创建数据库表master、pet_type、pet。注意表的字段的数据类型、主键、外键的指

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论