【精品IT教程】Oracle经典学习资料

上传人:hs****ma 文档编号:510953824 上传时间:2022-12-27 格式:DOC 页数:12 大小:303.51KB
返回 下载 相关 举报
【精品IT教程】Oracle经典学习资料_第1页
第1页 / 共12页
【精品IT教程】Oracle经典学习资料_第2页
第2页 / 共12页
【精品IT教程】Oracle经典学习资料_第3页
第3页 / 共12页
【精品IT教程】Oracle经典学习资料_第4页
第4页 / 共12页
【精品IT教程】Oracle经典学习资料_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《【精品IT教程】Oracle经典学习资料》由会员分享,可在线阅读,更多相关《【精品IT教程】Oracle经典学习资料(12页珍藏版)》请在金锄头文库上搜索。

1、Oracle & SQL基本介绍:OracleDBOracle公司 也提供应用系统;我们涉及的是数据库管理系统DBMS(多用户系统);数据库操作语言SQL结构化查询语言;SQL操作对象为 DB中的数据,表现形式为库和表。Oracle用表管理表系统表(数据字典)用户表:telnet 192.168.0.23 通过sqlplus命令 与数据库建立连接,才可操作DDL 、DML环境变量: PATH 中要加入sqlplus所在的目录 ORACLE_HOME Oracle安装目录 ORACLE_SID 表示连接的数据库 /一定要设置,否则无法连数据库 sqlplus sd0701/sd0701 SQL

2、表示这是SQL环境1. telnet 192.168.0.232. 用户 两个环境变量:ORACLE_HOME ORACLE_SID 数据库实例的名字 PATH 中追加 $ORACLE_HOME/bin3. sqlplus口令比如命令: show user /看登录的用户名 sqlplus命令一、Oracle数据库中常用的数据类型varchar2(长度) 可变长字符串 date 日期类型char(长度) 定长 number() 表示整数或者浮点数clob 字符的大对象blob 二进制的大对象select table_name from user_tables; /查看当前有那些表desc s_

3、emp /查看表结构 以上两条很有用二、数据库查询1、SELECT语句从表中提取查询数据.语法为:SELECT DISTINCT column1,column2, FROM tablename WHERE conditions GROUP BY conditions ORDER BY expressions ASC/DESC; 说明:SELECT子句用于指定检索数据库的中哪些列,FROM子句用于指定从哪一张表或视图中检索数据。注:distinct会触发排序2、WHERE子句。WHERE子句用来选择符合条件的记录。between . and . 表示结果在这之间,between and是一个闭区

4、间;!=,= 这三个都可以表示不等于;in (va1,val2,.) 判断结果是否在这个集合中存在; in等价于:=any 注意顺序会影响执行效率like . 表示字符串通配查询,%表示0或多个字符, _ 表示一个字符; 注意字符大小写敏感 知道转义的用法:like S_% escape . and . 表示只有两个条件同时满足;. or . 表示条件只要满足其中之一就可以;all . 是要求都满足条件;not . 可以与以上的条件产生相反的效果; not in 等价于: all 注意空值的影响,空值与任何值比较结果都为空!. is null 用来判断值是否为空。3、ORDER BY子句ORD

5、ER BY 子句使得SQL在显示查询结果时将各返回行按顺序排列,返回行的排列顺序由ORDER BY 子句指定的表达式的值确定。 ASC(默认,升序) DESC(降序)order by 目标列名(别名) 排序顺序(不写则默认为升序)例:select first_name from s_emp order by first_name; /默认为升序select first_name from s_emp order by first_name desc; /降序三、SQL常用的命令分类及例子create(创建)alter(更改)drop(删除)数据定义语言: DDL必须要掌握,使用频度高!inse

6、rt(插入)select(选择)delete(删除)update(更新)命令数据操纵语言: DML记住,事务处处流淌在我们的应用中!commit(提交)savepoint(保存点)rollback(回滚)事务控制语言: TCL数据控制语言:grant(授予)和revoke(回收)。与权限有关 DCL1、数据定义语言DDL举例: SQL create table myTab(no number(4),name varchar2(20); /创建一个名为myTab的表,包含两列分别为no和name;SQL alter table myTab modify (name varchar2(25); /

7、修改myTab中的name列,使此列能容纳25个字符;SQL alter table myTab add (tel_no varchar2(20); /给表myTab增加一列tel_no;SQL alter table myTab drop column tel_no; /删除表myTab的tel_no列;SQL drop table myTab; /删除表myTab;SQL truncate table myTab; /删除表myTab中的所有行(截断表),注意:此操作不可以rollback。2、数据操纵语言DML举例:SQL insert into myTab values(001,Joh

8、n); /向表myTab中插入一行数据;SQL select distinct salary “薪水” from s_emp where salary1500 order by sal desc; /选择表中salary大于1500的数据,以别名“薪水”显示并按照salary的降序进行排列输出;SQL create table empa as select empno,ename,job,sal from emp;/从emp表中选择“empno,ename,job,sal”四列的数据建立新表empa;SQL create table empa as select * from emp wher

9、e 1=2;/使用一个假条件根据现有表emp创建一个只包含结构的空表empa; SQL delete from empa where sal update empa set sal=1500 where sal commit; /用于提交并结束事务处理;SQL savepoint mark1; /保存点类似于标记,用来标记事务中可以应用回滚的点;SQL rollback to savepoint mark1; /回滚到保存点mark1。四、Oracle数据库函数注意:dual表(虚表)是专门用于函数测试和运算的.单行函数1、字符函数 字符是大小写敏感的 转小写 lower(字段名) 转大写 u

10、pper(字段名) 首字母大写 initcap(字段名) 字符串拼接 concat(字段1, 字段2) 截取子串 substr(字段名, 起始位置,取字符个数) 字符串长度 length() 忽略空值 nvl()例: select first_name,substr(first_name,2,2) sub from s_emp;(从名字的第二个字符开始取两个字符)select first_name,substr(first_name,-2,2) sub from s_emp;(从名字的倒数第二个字符开始取两个字符)2、数值函数 四舍五入函数 round(数据,保留到小数点后几位) 1表示保留到

11、小数点后一位,-1表示保留到小数点前一位。 例:select round(15.36,1) from dual; 截取数值函数 trunc(数据,保留到小数点后几位) 例:select trunc(123.456,1) from dual;截取到小数点后一位,注意:与round函数不同,不会四舍五入。3、日期函数 缺省日期格式:日-月-年 dd-mon-rr 修改当前会话的日期格式,会按照指定的格式输出日期 alter session set nls_date_format=yyyy mm dd hh24:mi:ss; 返回当前日期 sysdate 世纪、年、月、日、时、分、秒 例:selec

12、t sysdate from dual; 另外,date 类型可以运算:select sysdate-1,sysdate,sysdate+1 from dual; 单位为1天select sysdate,sysdate+1/144 from dual; 加10分钟两个日期相减表示 相隔多少天。使用函数:select trunk(add_months(sysdate,1),MONTH) from dual; /取下个月首天4、不同数据类型间转换函数 将日期转成特定格式字符串 tochar(date,日期格式) 日期格式要用有效格式,格式大小写敏感 yyyy mm dd hh24:mi:ss(标准

13、日期格式),year(年的全拼),month(月的全拼),day(星期的全拼),ddspth (日期的全拼) 例:select to_char(sysdate,yyyy mm dd hh24:mi:ss)from dual;select to_char(sysdate,year month day ddspth)from dual; /大小写敏感select to_char(sysdate,YEAR MONTH DAY DDSPTH)from dual; 将字符串转成日期 to_date(.,日期格式) 例:select to_char(to_date(2006 11 03,yyyy mm dd),dd-month-yy) from dual;五、表连接(关联查询)等值连接 select table1.column1,table2.column2 from table1 t1,table2 t2 where t1.column3=t2.column4; 表连接时,当表与表之间有同名字段时,可以加上表名或表的别名,加以区分,使用时要用表名.字段名或表别名.字段名(列名)。当表的字段名是唯一时,可以不用加上表名或表的别名。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号