oracle sql 课堂笔记。
第1节:1. 大数据库包括:mysql、oraclesql、seversql,此外还有db2、sybase。
2. 三大数据库包括:oracle、db2、sybase。
操作1:查找***。
计算机->管理->服务,找到oracleoradbllg-home|tnslister和oracleserviceorcl(实例名)。
3. 之前,已学过查询、表的增、删、改;视图、触发器、索引、关系图(通过视图表现)。
4. 英文解释:
procedures存储过程 constrainta 约束。
package 包materialized views 物化实图。
package bodies 包体 sequence 序列。
triggers 触发器tablespaces 表空间(存储到磁盘)
dbms-jobs (要求对数据做统计,安排一个工作后oracle定时运作 )
5. 当数据库很重要时,要备份!
6. 一个表空间对应若干个数据文件,操作系统对文件有限制。
操作2:用oracle net configuration assistant来进行***的增删。
7. sql中的语言:
ddl数据定义语言。
dml 数据管理语言。
dcl 数据控制语言。
8. varchar2与char区别:
varchar2是变长的字符,存储速率慢,但节省空间。
char是固定字符,存储速率快,但不节省空间。
操作3:在cmd上进行sql语句的输入。
9. sqlplus是oracle自带的与oracle交互工具,用来写oracle语言。
10. toad是oracle的管理工具。
11. user_tab_columns是数据字典。
12. 字符串连接用“||操作符。
13. sql语句基本规则:
14. sql命令是大小写不敏感。
15. sql命令可写成一行或多行。
一个关键字不能跨多行或缩写。
子句通常位于独立行,以便编辑,并易读。
空格和缩进使程序易读。
关键字大写,其他小写。
16. 使用select * 可显示所有的列。
17. 默认情况下,显示所有行,包括重复记录。如果想去掉18. 重复记录,可以在distinct关键字。
19. 注意:在where子句中的字符串和日期必须用单引号括起来,所有的字符是大小写敏感的。
oracle的安装过程:
1.注册。2.**。
3.选择平台(linvx或window)
4.选择32位或64位。
安装目录:c盘。
安装内存:默认40%
8)验证安装结果:
从网上**pl/sql,安装运行,用户名为:scott,密码为:tiger,数据库为:orcl,登入。
登入进去尝试对emp表进行一下查询,如下图:
说明链接成功。
第2节:1. 注意:在where子句中的字符串和日期必须用单引号括起来,所有的字符是大小写敏感的。
2. 为了避免日期字段查询条件不同格式下可能造成的错误,通常用to_date函数来进行转换。
3. %可表示零或多个字符。
可表示一个字符
4. 查询包含空值的记录使用is null。
5. 在缺省情况下,查询返回的结果是没被排序的。使用order by子可将记录排序。
order by 子句放在最后。asc表示升序排序,desc表示降序排序,缺省为asc。
6. 按照多个列排序时要注意!
7. oracle使用内部的数字化格式存储日期,它们代表世纪、年、月、日、小时、分钟和秒。
8. sysdate是一个返回当前日期和时间的日期函数。
9. dual是一个sys用户所拥有的表,所有的用户都可以访问。它包括一个列dummy和一条记录值为x。
10. 显示当前的日期:
sql>select sysdate from
11. 注意:两个日期类型字段不能相加。
12. nvl2(表达式1,表达式2,表达式3)
如果表达式1为空,返回值为表达式3的值。如果表达式1不为空,返回值为表达式2的值。
create or replace procedure hh(deptno1 number,dname1 varchar2, loc1 varchar2) is
vcout
beginselect count(*)into vcout from dept t where = deptno1;
dbms_if vcout = 0 then
insert into dept values (deptno1, dname1, loc1);
commit;
elseupdate dept set deptno = deptno1 where deptno = deptno1 ;
update dept set dname = dname1 where deptno = deptno1 ;
update dept set loc = loc1 where deptno = deptno1 ;
commit;
end if;
end;create or replace procedure setdeptno(deptnox number,dnamex varchar2, locx varchar2) is
vcout
beginselect count(*)into vcout from dept t where = deptnox;
dbms_if vcout = 0 then
insert into dept values (deptnox, dnamex, locx);
commit;
elseupdate dept set deptno = deptnox where deptno = deptnox ;
update dept set dname = dnamex where deptno = deptnox ;
update dept set loc = locx where deptno = deptnox ;
commit;
end if;
end;
第九周作业
初三周末作业。姓名得分等级。一 选择题 每小题4分,共40分 1 在式子,9 x 中,分式的个数是 a.5b.4cd.2.下列关于分式的判断,正确的是 a.当x 2时,的值为零b.无论x为何值,的值总为正数。c.无论x为何值,不可能得整数值 d.当x3时,有意义。3 已知函数的图象经过点 2,3 下...
oracle作业
按步骤写出下列 如无特别说明,均在scott用户模式下编写 大家可以自己在sqlplus中编译。1 创建视图 a 基于emp表创建一个vw emp视图,显示empno,ename,job,hiredate,deptno这几个字段。答 1 首先应该给scott用户授权。2 登陆创建视图并查看。b 查询...
oracle作业
先创建下面三个表 book表 borrow表 reader表 1 找出姓李的读者姓名 name 和所在单位 company select from reader t where name like 李 2 列出图书库中所有藏书的书名 book name 及出版单位 output select dis...