ImageVerifierCode 换一换
格式:DOCX , 页数:67 ,大小:308.08KB ,
资源ID:6897453      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6897453.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Oracle数据库从零开始学习.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Oracle数据库从零开始学习.docx

1、Oracle数据库从零开始学习Oracle数据库学习Oracle数据库学习 11 基本使用 51.1 常用命令 51.1.1 Connect/Disconnect 数据库连接命令 51.1.2 PL/SQL连接数据库配置,Oracle客户端的配置文件 51.1.3 配置Oracle数据库监听Assistant 61.1.4 Password 修改密码命令 61.1.5 Show 显示登录用户 61.1.6 Clear 清屏 61.1.7 Exit 退出命令 61.1.8 文件操作命令 61.1.9 & 交互式命令 61.1.10 显示和设置环境的变量 72 用户管理 72.1 用户管理 72.

2、1.1 Create user 创建用户 72.1.2 Password 修改密码 72.1.3 Drop user删除用户 72.1.4 赋予和收回权限 82.1.5 Profile管理用户口令 82.1.6 给账户解锁 92.1.7 终止口令 92.1.8 口令历史 92.1.9 删除profile文件 93 数据类型 103.1 字符型 103.1.1 Char 定长字符 103.1.2 Varchar2 变长字符 103.1.3 Clob 字符型大对象 103.2 数值型 103.2.1 Number 数值型 103.3 日期 103.3.1 Date 一般日期(年、月、日,时、分、秒

3、) 103.3.2 timestamp 精确时间 103.4 图片类型 113.4.1 Blob 可存储图片、视频、声音 114 表格管理 114.1 创建表(注意字母大小写,一般为大写) 114.2 添加一个字段 114.3 修改字段的长度 114.4 删除一个字段 114.5 修改表的名字 124.6 删除表 124.7 所有字段都插入数据 124.8 插入部分字段 124.9 插入空值 124.10 查询空值 124.11 修改字段 124.12 删除数据 135 简单表查询 135.1 查询表的结构 135.2 查询表的指定列和所有列 135.3 Distinct 取消重复行 135.

4、4 疯狂复制 135.5 Select中使用列的别名 145.6 Select中使用算术表达式 145.7 使用NVL函数处理NULL值 145.8 “|”字符串连接符 145.9 Where 查询条件子句 145.10 Like 操作符 145.11 Where 条件中使用IN 155.12 使用is null的操作符 155.13 使用逻辑操作符号 155.14 Order by排序语句 155.15 使用列的别名排序 156 复杂表查询 166.1 数据分组 max,min,avg,sum,count 166.2 Group by和having子句 166.3 数据分组总结 167 多表

5、查询 177.1 多表查询,between and语句 177.2 自连接 178 子查询 178.1 单行子查询 178.2 多行子查询 188.3 使用any操作符查询 188.4 多列子查询 188.5 From子句中使用子查询 188.6 分页查询 188.7 用查询结果创建新表 198.8 合并查询 199 Java操作Oracle 209.1 jdbc.odbc桥连接,不能远程连接 209.1.1 引sql包 209.1.2 加载驱动 209.1.3 得到连接 209.2 jdbc.Oracle连接,允许远程连接 209.2.1 引sql包 209.2.2 加载驱动 209.2.3

6、 得到连接 2010 事物 2110.1 使用子查询插入数据 2110.2 使用子查询插入数据 2110.3 Oracle中的事物 2111 函数 2211.1 字符函数 2211.1.1 lower(char):将字符串转化为小写的格式 2211.1.2 upper(char):将字符串转化为大写的格式 2211.1.3 length(char):返回字符串的长度 2211.1.4 substr(char,m,n):取字符串的子串 2211.1.5 replace(char1,serch_string,replace_string)替换字符串 2211.1.6 instr(char1,cha

7、r2,n,m)取子串在字符串的位置 2211.2 数学函数 2311.2.1 round(n,m) 四舍五入 2311.2.2 trunc(n,m) 截取数字 2311.2.3 mod(m,n) 取摩 2311.2.4 floor(n) 向下取最大整数 2311.2.5 ceil(n) 向上取最小整数 2311.2.6 abs(n) 返回数字n的绝对值 2411.2.7 acos(n) 返回数字的反余弦值 2411.2.8 asin(n) 返回数字的反正弦值 2411.2.9 atan(n) 返回数字的反正切 2411.2.10 cos(n) 返回数字的余弦值 2411.2.11 exp(n)

8、 返回e的n次幂 2411.2.12 log(m,n) 返回对数值 2411.2.13 power(m,n) 返回m的n次幂 2411.3 日期函数 2411.3.1 To_date函数 2411.3.2 sysdate 该函数返回系统时间; 2411.3.3 add_months(d,n); 2411.3.4 last_day(d) 返回指定日期所在月份的最后一天 2511.4 转换函数 2511.4.1 To_char转换函数 2511.4.2 To_date函数 2611.5 系统函数 2611.5.1 Sys_context函数 2612 数据库管理 2712.1 数据库管理员 271

9、2.1.1 管理数据库的用户主要有:sys和system 2712.1.2 Dba、Sysdba、Sysoper权限的用户 2712.1.3 管理初始化参数 2812.2 数据库(表)的逻辑备份和恢复 2812.2.1 导出 2812.2.2 导入 3012.3 数据字典和动态性能视图 3112.3.1 数据字典 3112.3.2 数据字典-用户名、权限、角色 3112.3.3 动态性能视图 3213 约束 3213.1 创建约束 3313.2 删除约束 3413.3 显示约束信息 3413.4 表级定义和列级定义 3414 索引、权限 3514.1 索引 3514.1.1 创建索引 3514

10、.1.2 索引使用原则 3514.1.3 索引缺点分析 3514.1.4 其他索引 3514.1.5 显示表的所有索引 3514.2 权限 3614.2.1 系统权限 3614.2.2 对象权限 3615 角色 3715.1 预定义角色 3815.1.1 Connect角色 3815.1.2 resource角色 3815.1.3 dba角色 3815.2 自定义角色 3915.2.1 建立角色 3915.2.2 角色授权 3915.2.3 授予用户角色权限 3915.2.4 删除角色 4015.2.5 显示角色信息 4015.2.6 精细访问控制 4016 plsql编程 4116.1 PL

11、/SQL编程介绍 4116.1.1 PL/SQL创建存储过程 4116.1.2 PL/SQL编程分类 4216.1.3 PL/SQL编写规范 4216.1.4 PL/SQL编程块 4216.1.5 PL/SQL编程过程 4316.1.6 PL/SQL编程函数 4416.1.7 PL/SQL编程包 4516.1.8 PL/SQL编程触发器 4616.1.9 PL/SQL编程变量 4616.1.10 PL/SQL编程控制结构 5016.1.11 PL/SQL编程分页过程编写 5316.1.12 PL/SQL编程例外 6016.1.13 PL/SQL编程视图 631 基本使用Oracle安装成功后,

12、会默认生成三个用户Sys 用户:超级管理员 权限最高 它的角色dba密码change_on_installSystem 用户:是系统管理员 权限也很高 他的角色是 dbaoper 密码 managerScott用户:普通用户 密码是 tigerSys与system区别:Sys有create databse的权限,而system没有,其他相似,日常对Oracle管理过程中使用system就够了。1.1 常用命令1.1.1 Connect/Disconnect 数据库连接命令Connect 用户名、密码网络服务名as sysdba/sysoper,当用特权用户身份连接时,必须带上as sysdba

13、或是as sysoper ;Disconnect该命令用来断开与当前数据库的连接。1.1.2 PL/SQL连接数据库配置,Oracle客户端的配置文件Oracle客户端的配制文件,默认会安装在“C:Oracleora90networkadmin”目录下,名为“tnsnames.ora”参考格式如下:YY_192.168.1.7 = - YY_192.168.1.7即数据库名_数据库IP地址 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.7)(PORT = 1521) - HOST数据库IP

14、地址,PORT端口 ) (CONNECT_DATA = (SID = YY) -YY数据库名 (SERVER = DEDICATED) )1.1.3 配置Oracle数据库监听Assistant1.1.4 Password 修改密码命令该命令用于修改用户的密码,如果想修改其他用户的密码,需要用sys/system登录1.1.5 Show 显示登录用户Show user;显示当前登录用户名1.1.6 Clear 清屏Clear;清屏1.1.7 Exit 退出命令该命令会断开与数据库的连接,同时会退出sql*plus 。 1.1.8 文件操作命令1) Start 和 运行sql脚本如:sql d:

15、a.sql 或者sqlStart d:a.sql2) Edit 该命令可以编辑指定的SQL脚本如:Sqledit d:a.sql3) Spool 该命令可以将sql*plus屏幕上的内容输出到指定的文件中去如:Sqlspool d:b.sql 并输入sqlspool off;1.1.9 & 交互式命令& 可以替代变量在执行时,需要用户输入。如:SQLselsct * from emp where job=&工作;1.1.10 显示和设置环境的变量可以用来控制输出的各种格式,set show 如果希望永久的保存相关的设置,可以去修改glogin.sql脚本1) Linsesize 设置显示行的宽

16、度,默认是80个字符Sqlshow linesizeSqlset linesize 902) Pagesize 设置每页显示的行数目,默认是14,用法和linesize一样2 用户管理2.1 用户管理 2.1.1 Create user 创建用户创建用户必须用DBA权限,或者拥有alter user系统权限,密码只能以字母开头, 新创建的用户没有任何权限,不能登录数据库,需要授权。Create user abc identified by m123;-创建用户名为abc,密码为m123的用户2.1.2 Password 修改密码给自己修改密码可以直接使用Sqlpassword 用户名如果给别人

17、修改密码则需要具有dba的权限,或是拥有alter user的系统权限Sqlalter user 用户名 identitied by 新密码2.1.3 Drop user删除用户在删除用户时,如果要删除的用户,已经创建了表,那么就需要在删除时带一个参数cascade,指删除该用户下面所有的表,一般以dba的身份去删除某个用户,如果用其他用户去删除用户则需要具有drop user的权限SqlDrop user 用户名caseade2.1.4 赋予和收回权限1) 授予权限命令grant,常用的角色有connect、dba、resources三种;Resources角色可以在任何一个表空间建表;Sq

18、lgrant connect to xiaoming;-给xiaoming授予connect角色的权限SQL revoke sysdba from xiaoming; -回收xiaoming的sysdba权限2) 如何使用户可以管理其他用户的表,Select查询、insert插入、update修改、delete删除、all全部、create index;只有sys、system和表的创建者才可以给其他用户授予表的管理权限(假设emp为Scott用户的表);Grant select on emp to abc;-Scott用户将emp表的查询权限授予给abc用户Grant update on e

19、mp to abc;-Scott用户将emp表的修改权限授予给abc用户Grant all on emp to abc;-Scott用户将emp表的所有权限授予给abc用户3) 回收权限命令revoke,谁授予的权限谁收回Revoke select on emp to abc;-Scott用户将emp表的查询权限从abc用户收回Revoke update on emp to abc;-Scott用户将emp表的修改权限从abc用户收回Revoke all on emp to abc;-Scott用户将emp表的所有权限从abc用户收回4) 被授予权限用户继续授予该权限给其他用户,如果是对象权限

20、,后面就加入with grant option;如果是系统权限,后面就加入with admin option;如果收回某用户的权限则该用户授予给其他下级用户该权限将全部收回Grant select on emp to abc with grant option;- Scott用户将emp表的查询权限授予给abc用户,并且让abc用户继续给其他用户授权Grant select on Scott.emp to abc1 ;abc用户将Scott.emp表的查询权限授予给abc1用户2.1.5 Profile管理用户口令Profile是口令限制,资源限制的命令集合,当建立数据库时,Oracle会自动

21、建立名为default的profile,当建立用户没有指定profile选项,那Oracle就会将default分配给用户,账户锁定:指定该账户登录时最多可以输入错误密码的次数,也可以指定用户锁定的时间(天),一般用dba的身份去执行该命令。案例:指定abc账户登录时最多可以输入错误密码3次,锁定的时间2天Sqlcreate profile lock_a limit failed_login_attempts 3 password_lock_time 2;Sqlalter user abc profile lock_a;-给用户abc指定profile选项2.1.6 给账户解锁Sqlalter

22、 user abc account unlock;-给用户abc解锁2.1.7 终止口令为了让用户定期修改密码可以使用终止口令的指令来完成,同样这个命令也需要dba身份来操作。案例:创建一个profile文件,要求该用户每隔10天要修改自家的登录密码,宽限期为2天。Sqlcreate profile lock_a1 limit password_life_time 10 password_grace_time 2;Sqlalter user abc profile lock_a1;2.1.8 口令历史如果希望用户在修改密码时,不能使用以前使用过的密码,可使用口令历史,这样Oracle就会将口令

23、修改的信息存放到数据字典中,这样当用户修改密码时,Oracle就会对新旧密码进行比较,当发现新旧密码一样时,就提示用户重新输入密码。案例:建立profile文件, password_reuse_time /指定口令可重用时间,超过该时间可再次使用:Sqlcreate profile password_h limit password_life_time 10 password_grace_time 2 password_reuse_time 10;分配给用户:Sqlalter user abc profile password_h;2.1.9 删除profile文件删除profile文件,如果

24、该profile已经分配给客户需在后面加参数cascade,所有受到该profile文件限制的用户全部解除该限制。Sqldrop profile password_h cascade;3 数据类型3.1 字符型3.1.1 Char 定长字符char(10) 定长字符 最大2000字符,字符数不足用空格不足,查询速度快,适合定长数据,如身份证、手机号码等;3.1.2 Varchar2 变长字符varchar(20) 变长字符 最大4000字符;3.1.3 Clob 字符型大对象clob(30000) 字符型大对象,最大4G,可以存图片、视频等;3.2 数值型3.2.1 Number 数值型 nu

25、mber(5,2) 可以表示-10的38次方到10的38次方,如number(5)表示5位整数,number(5,2)表示3位整数2位小数;3.3 日期3.3.1 Date 一般日期(年、月、日,时、分、秒)包含年月日和时分秒;3.3.2 timestamp 精确时间时间可以精确到更小的单位3.4 图片类型3.4.1 Blob 可存储图片、视频、声音 blob 二进制数据,最大4G,可以存图片、视频、声音等;4 表格管理4.1 创建表(注意字母大小写,一般为大写)学生表:create table student(,-学生xh number(4), -学号xm varchar2(20),-姓名x

26、b char(2),-性别birthday date,-出生日期val number(7,2)-奖学金);班级表:create table class(-班级classid(4),-班级编号name(20),-班级名称);4.2 添加一个字段alter table student add(classid number(2);4.3 修改字段的长度alter table student modify (xm varchar2(30);4.4 删除一个字段alter table student drop column sal;实际过程中不要轻易删除字段。4.5 修改表的名字rename stude

27、nt to stu;-将STUDENT修改为STU4.6 删除表drop table student;-删除STUDENT表4.7 所有字段都插入数据insert into student values(1003,张三,01-5月-05,10);日期格式默认为:DD-MON-YY该日期格式: alter session set nls_date format =YYYY-MM-DD;日期格式可以任意修改,Y年份,M月份,D日;4.8 插入部分字段insert into student (xh,xm,sex) values (1004,李四,女);4.9 插入空值insert into stud

28、ent (xh,xm,sex,birthday) values (1005,杨慧,女,null);4.10 查询空值select * from student where birthday is null;-查询空值select * from student where birthday is not null;-查询非空值4.11 修改字段update student set sex=男 where xh=1004; -修改一个字段update student set sex=男,birthday=1980-04-01 where xh=1004; -修改多个字段例如:update stud

29、ent set sal=sal*1.5 where sex=男; -所有男性员工薪水加1.5倍update student set birthday is null where xh=1004; -修改为空值4.12 删除数据delete from student;-删除所有记录,表结构还在,写日志,可以恢复的(回滚),速度慢delete from student where xh=1005; -删除一条记录drop table student;-删除表结构和数据truncate table student;-删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快;savepoi

30、nt AA;-创建回滚点AArollback to AA;-回滚到AA点,需先创建回滚点5 简单表查询5.1 查询表的结构Sqldesc dept;-查看dept表的结构5.2 查询表的指定列和所有列Select * from emp;-查询全部列Select ename,sal,job from emp;-查询指定列注意:查询过程中尽量少用查询全部列,以节省查询时间,提高查询效率5.3 Distinct 取消重复行Select distinct deptno,job from emp;5.4 疯狂复制Insert into users(userid,username,userpass) select * from users;-向users表中添加users自己表中的数据案例1:查询SMITH 的薪水,工作,所在部门Select deptno,job,sal from emp where e

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1