j**a相关课程系列笔记之二。
笔记内容说明。
oracle数据库、sql(薛海璐老师主讲,占笔记内容100%);
目录。一、 数据库介绍 1
1.1表是数据库中存储数据的基本单位 1
1.2数据库标准语言 1
1.3数据库(db) 1
1.4数据库种类 1
1.5数据库中如何定义表 1
1.6 create database dbname的含义 1
1.7安装dbms 1
1.8宏观上是数据-->database 1
1.9远程登录:telnet ip地址 1
1.10 tcp/ip通信协议 2
1.11数据库建连接必须提供以下信息 2
1.12一台机器可跑几个数据库,主要受内存大小影响 2
1.13源表和结果集 2
1.14几个简单命令 2
1.15 tarena给jsd1304授权 2
1.16课程中使用的5个表 3
二、 select from语句 5
2.1 select语句功能 5
2.2 select语句基本语法 5
2.3列别名 5
2.4算术表达式 5
2.5空值null的处理 5
2.6 nvl(p1,p2)函数 5
2.7拼接运算符 ||6
2.8文字字符串 6
2.9消除重复行 6
2.10其他注意事项 6
三、 sql语句的处理过程 7
3.1 sql语句处理过程 7
3.2处理一条select语句 7
四、 where子句 8
4.1 where子句后面可以跟什么 8
4.2语法和执行顺序 8
4.3字符串是大小写敏感的,在比较时严格区分大小写 8
4.4 where子句后面可以跟多个条件表达式 8
4.5 between and运算符 8
4.6 in运算符(多值运算符) 8
4.7 like运算符 9
4.8 is null运算符 9
4.9比较和逻辑运算符(单值运算符) 9
4.10多值运算符all、any 9
4.11运算符的否定形式 9
五、 order by子句 10
5.1语法和执行顺序 10
5.2升降序 10
5.3 null值在排序中显示 10
5.4 order by后面可以跟什么 10
5.5多列排序 10
六、 单行函数的使用 11
6.1数值类型 11
6.2日期类型 11
6.3字符类型 13
6.4转换函数 14
6.5其他注意事项 14
七、 sql语句中的分支 15
7.1分支表达式 15
7.2分支函数 15
八、 组函数 16
8.1报表统计常用 16
8.2缺省情况组函数处理什么值 16
8.3当组函数要处理的所有值都为null时 16
8.4行级信息和组级信息 16
九、 group by子句 17
9.1语法和执行顺序 17
9.2分组过程 17
9.3常见错误 17
9.4多列分组 17
十、 h**ing子句 18
10.1语法和执行顺序 18
10.2执行过程 18
10.3 where和h**ing区别 18
十一、 非关联子查询 19
11.1语法 19
11.2子查询的执行过程 19
11.3常见错误 19
11.4子查询与空值 19
11.5多列子查询 20
十二、 关联子查询 21
12.1语法 21
12.2执行过程 21
12.3 exists 21
12.4 exists执行过程 21
12.5 not exists 22
12.6 not exists执行过程 22
12.7 in和exists比较 22
十三、 多表查询 23
13.1按范式要求设计表结构 23
13.2多表连接的种类 23
13.3交叉连接 23
13.4内连接 23
13.5外连接 25
13.6非等值连接 27
13.7表连接总结 27
十四、 集合 28
14.1表连接主要解决的问题 28
14.2集合运算 28
14.3集合运算符 28
14.4子查询、连接、集合总结 29
十五、 排名分页问题 30
15.1什么是rownum 30
15.2 where rownum<=5的执行过程 30
15.3 where rownum=5的执行过程 30
十六、 约束constraint 31
16.1约束的类型 31
16.2 primary key:主键约束 31
16.3 not null:非空约束 31
16.4 unique key:唯一建约束 31
16.5 references foreign key:外键约束 32
16.6 check:检查约束 34
十七、 事务 35
17.1 transaction 35
17.2定义 35
17.3事务的特性:acid 35
17.4事务的隔离级别 35
17.5数据库开发的关键挑战 35
17.6锁的概念 36
17.7 oracle的锁机制 36
17.8事务不提交的后果 36
17.9回滚事务rollback 36
17.10保留点s**epoint 36
十八、 数据库对象:视图view 37
18.1带子查询的create table 37
18.2带子查询的insert 37
18.3定义缺省值:default 37
18.4 视图view 38
18.5视图的应用场景 38
18.6视图的分类 39
18.7视图的维护 39
十九、 数据库对象:索引index 41
19.1创建index 41
19.2扫描表的方式 41
19.3索引的结构 41
19.4为什么要使用索引 42
19.5哪些列适合建索引 42
19.6索引的类型 42
19.7哪些写法会导致索引用不了 43
二十、 数据库对象:序列号sequence 44
20.1什么是sequence 44
20.2创建sequence 44
20.3缺省是nocycle(不循环) 44
20.4缺省cache 20 44
二十一、 其他注意事项 46
21.1删除表,删除列,删除列中的值 46
21.2多对多关系的实现 46
21.3一对多(两张表) 46
21.4一对一 46
21.5数据库对象 46
12.6缺省(默认)总结: 46
结构化查询语言sql:structureed query language
1)数据定义语言ddl:data definition language
create table列表结构、alter table修改列、drop table删除列。
2)数据操作语言dml:data manipulation language
insert增加一行,某些列插入值、update修改一行,这一行的某些列、delete删除一行,跟列无关。
3)事务控制语言tcl:transaction conrtol language
commit确认,提交(入库)、rollback取消,回滚,撤销。
4)数据查询语言dql:data query language
select语句。
5)数据控制语言dcl:data control language
系统为多用户系统因此有隐私权限问题:grant 授权、revoke**权限。
database 关系数据库使用关系或二维表存储信息。
关系型数据库管理系统(edbms):relationship database management system是一套软件,用于在数据库中存储数据、维护数据、查询数据等。
oracle 10g(oracle)、db2(ibm)、sql server(ms)
先画列即表头(列名,数据类型及长度,约束);数据类型有字符、数值number、日期date。
创建数据库即创建可用空间,创建出一堆数据文件data file
职位:dba 数据库管理员(database administrator)
开发流程:create tabale dml tcl ->dql select
sql developer在linux系统---连接---database在solaris系统。
两台机器上的两个应用程序要通信,必须依赖网络,依赖tcp/ip通信协议。
ip:ip协议包中提供要连接机器的ip地址,用于标识机器。
tcp:tcp协议包中提供与机器上的哪个具体应用程序通信,通过端口号实现,oracle数据库服务缺省端口为1521,用于标识oracle此数据库应用。
ip地址(确认机器)、port号(确认进程(程序)确认oracle)
sid:一个端口可以为多个oracle数据库提供监听,因此还需要提供具体的数据库名。(确认数据库里的哪个数据库)
username、password:要想访问数据库,必须是该数据库上一个有效的用户。(确认身份)
源表:被查询的表结果集:select语句的查询结果。
show user:查看当前用户 desc 表名:查看表结构。
drop table 表名 purge;删除表,oracle中删除表不是真正的删除,而是占空间的移动到别的地方,因为为了不占空间,真正的删除需要用purge。
delete from 表名:删除表中所有值;若加上where 列名=value则删除某列中的值。
connect tarena/tarena
grant select on account to jsd1304grant select on service to jsd1304;
grant select on cost to jsd1304;
jsd1304 select tarena的表。
connect jsd1304/jsd1304
create synonym 创建同义词create synonym account for
create synonym service for create synonym cost for
1)投影操作:结果集是源表中的部分“列”
2)选择操作:结果集是源表中的部分“行”
3)选择操作+投影操作:结果集是源表中的部分“行”部分“列”
ORACLE学习笔记
rac real application clusters 真实应用集群。ohs oracle http server sga system global area 系统全局区,是系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。实例 存取和控制数据数...
Oracle学习笔记
参数文件 记录了控制文件的位置,控制文件是一个非常小的二进制文件,最大。可以增长到 64mb,控制文件包括如下主要信息 数据库的名字,检查点信息,数据库创建的时间戳 所有的数据文件,联机日志文件,归档日志文件信息 备份信息等 有了这些信息,oracle 就知道那些文件是数据文件,现在的重做日志文件是...
ORACLE学习笔记
目录。oracla管理 1 1.登录sqlplus 1 1.1.sysdba 身份登陆 1 1.2.普通用户登陆sqlplus 1 2.常用命令 1 3.格式化提示符 2 4.查看系统状态 2 4.1.查看实例状态 2 4.2.查看表 2 5.关闭 启动 2 6.创建表空间 3 7.用户和权限 3 ...