1.Oracle在安装时会自动创建和配置数据库(1个)
2.Oracle数据库服务器只有一个数据库以及至少一个数据库实例
3.数据库:存储数据的
4.数据库实例:当Oracle开启后,就启动一个进程,该实例用来存储Oracle的所有操作。
5.Oracle在安装完成后会自动产生多个用户
SYS----超级管理员
SYSTEM----普通管理员
SCOTT---最常见的普通用户(使用率最高)
默认密码:tiger
注意:第一次使用SCOTT用户,需要超级管理员解锁。
默认SCOTT是锁定。
6.Oracle的一些文件详解:
数据文件:存储数据,扩展名:dbf
控制文件:启动或者操作存储的信息,扩展名:ctl
日志文件:操作表以及视图及其他操作是产生的日志信息
扩展名:log
7.表空间的概念
(1)表空间是通过数据库划分出来,类似sqlserver中的数据库,容器
(2)Oracle只有一个数据库,怎么区分管理不同的系统,通过表空间。
(3)表空间的关键词:tablespace。
====================================
使用Oracle数据库之前,必须知道以下几点
1.开启前必须启动服务和监听
(1)服务 oracleservicesorcl
(2)监听 ......listener
2.通过超级管理登录,然后解锁scott用户
2.1 超级管理员登录。
cmd
sqlplus / as sysdba;
sqlplusdeveloper
实例选择:orcl 连接到:sysdba
2.2 给scott用户解锁。
锁定 alter user scott account lock;
解锁 alter user scott account unlock;
解锁的同时可以重新设置密码
alter user scott account unlock identified by 初始密码;
Oracle基本介绍
============================================
一、需要启动的服务:
OracleServiceORCL //oracle数据库服务
OracleOraDb11g_home1TNSListener //oracle监听服务=======================================
常用数据表如emp、dept、salgrade等表,这几个表存储在系统账号scott下,可以通过scott账号查看表格的基本情况。
=======================================
二、关于Oracle数据库的开发环境
启动步骤:Oracle->应用程序开发->SQL Plus
用户名:scott
口令:tiger
主机字符串:orcl==========================================
三、PL/SQL Developer 集成开发环境
它是Oracle的第三方工具;
因为oracle的开发环境糟糕,因此我们采用第三方的==========================================
四、新建SQL窗口
文件 --> 新建 --> SQL窗口
==========================================Sql与Oracle最大的不同:
Sql中可以随时随意的创建数据库;但Oracle只有一个数据库,一台电脑只会安装一个数据库。
为了区分彼此,Oracle只有创建用户,一个用户一个数据库。
五、账户、表空间、数据库
开辟(分配)数据库空间----表空间(TableSpace)。
表空间代替了数据库,创建数据库就是开辟账户空间。注意:Oracle为A账户开辟一个表空间,为B账户开辟一个表空间,请问A和B是不是在用同一个数据库?
不同账号之间能不能互访?*****************************************
其实就是用表空间代替了数据库。创建数据库就是开辟用户空间。
****************************************=================================================
六、Oracle的安装--号称史上最麻烦的安装
Oracle里面的东西太多了,大批量处理数据的。
sql server号称百万级数据(一个表的数据),但其实最多20万条记录,超过20万条就用Oracle。
安装可能成功,但连接不了的情况,而且也不报错。
-----------------------------------
oracle8i/9i (internet)基于网络的oracle10g/11g (grid)基于网格的,它的客户端就是个web程序了,可以在IE里打开的:oracle->Database Control - orcl点下就会在IE中打开,如果找不到地址就是没开动OracleDBConsoleorcl服务(DBC控制器),该功能就相当于SQL Server
orcale12c
==================================================
七、启动服务,进入Oracle,PL/SQL
7.1 创建数据库和账户
数据库
物理的:数据文件.dbf;日志文件.log;控制文件.ctl;
虚拟的:表空间(可以用户开辟)数据库实例
启动的数据库对应一个数据库实例,由实例来访问和控制数据库。***********************************
问:先创建表空间还是用户?
先创建表空间,再给用户分配表空间
**********************************关于账户:
----sys和system管理员账号,在装软件时就已分配好的,因此可以用这账号开辟表空间。
----scott(释放账号:给我们用和看的),密码是tiger。
注意:千万不要去改这账号和密码,全球都是一样的。(改是可以改,但别去改)
关于账户登录:
可以用sys或system管理员账号登录,也可以用scott账户登录。
怎么登?
1.在开始菜单中选择oracle目录--应用程序开发--sql plus
2.在cmd状态下,直接通过命令sqlplus来登录。
在oracle下输入命令:
sys/sys as sysdba --sysdba是数据库系统管理员
解释:第一个sys是账户,第二个sys是密码,该账号做为管理员登录。
思考:
管理员账户可以调用一般账户的表吗?
select * from scott.emp;一般账户可以调一般账户的表吗?
=====================================================
7.2 创建表空间
基于应用性能和管理方面的考虑,最好为不同的用户创建独立的表空间。
创建表空间的语法:
create tablespace 表空间名例:
create tablespace t_table
datafile 'e:\111.dbf' --数据文件存方地址
size 100M;
--只要上面三行就OK了
autoextend on next 32 maxsize unlimited
logging
extent management local
segment space management auto;
========================================进入PL/SQL
1.all objects ==> my objects
2.左侧的都了解了,oracle就完了My Objects
Functions 函数-
Procedures 存储过程-
Packages 包-
Package bodies 包体-
Types 类型-
Type bodies 类型体-
Triggers 触发器-
Java sources
Jobs 工作
Queues 队列
Queue table 队列表格
Libraries
Directories
Tables 表格-
Views 视图-
Materialized views
Sequences 序列-
Users 用户-
Profiles 控制文件-
Relos 角色-
Synonyms 同义词-
Database links
Tablespaces 表空间-
Clusters
==============================================用;号隔开,代表代码写完了,可以执行了
如果你是管理员账号,调别的用户的账号可以吗?可以
--账户.表;
select * from scott.emp;如果你是一般用户的账号可以调别人的吗?正常情况下不行,除非授权。
关于账户在Oracle有另一个名词叫:模式
select * from 模式.表;比如scott就是个模式
比如其它的对象就是个模式
每个对象都是个模式
==============================================
7.2 给表空间分配账户
1.创建账户,指定访问表空间,但未给它赋任何权限,登录时是登不了的!
create user 用户名
identified by 密码
[default tablespace 表空间]
[temporary tablespace 临时的表空间] --该行一般不用案例:
create user u_dml
indentified by 123
default tablespace t_table7.3 要给角色授权
(把用户与角色区分搞清楚)
角色:张扬是个学生,是指角色
用户:而张扬,是一个用户给角色授予权限:
找到users-用户名-编辑-角色权限
connect:临时用户的权限
resource:正式用户的权限
DBA:管理员(一般不用)分配权限或角色:
Grant privileges or role To user;例:Grant connect,resource to u_dml;
--给dml角色分配权限
7.4 撤销权限或角色:
Revoke privileges or role FROM user;例:revoke connect,resource from u_dml; --撤销dml角色的connect,resource权限
grant create tablespace to scott;--给与用户创建表空间权限
===============================================
八、建表
建的表都在Tables里面。
两种建表方式:
1.视图
2.代码create table tb_88
(
sid number, --int类型用number
sname varchar2(55), --没有varchar
sex varchar2(10)
)--查看表里的数据:
select * from tb_88;*****************************************
Oracle中有标识列吗?
oracle没有标识列,不过有个替代品(触发器+序列)
*****************************************--插入数据
insert into tb_88(sid,sname,sex)
values(10,'张天','男');--视图版的添加表:
右击Tables--新建--主键:在键里,名称自己取,类型primary,选定哪个列做主键,联合主键就选两个,请问有几个主键?1个删除列:右则的减号
--怎么查看建表的脚本?
右下角--看SQL
--建完表后点“应用”==================================================
select * from emp;
--1.Oracle的单行注释(--)
--2.Oracle的多行注释(/**/)
--3.oracle不区分大小写
--4.Oracle安装后所产生的账户scott存在四张系统表
--emp(员工表)** dept(部门表)** bonus(岗位表) salgrade(薪资表)
--5.oracle安装后会自动创建表空间,也可以自定义创建表空间
#表空间:tablespace
/*
创建表空间的语法:
create tablespace 表空间的名称
datafile '数据文件的存储目录'
size 5M
注意:数据文件的存储目录最好是Oracle的安装目录
问题:普通角色scott创建不了表空间,必须SYS超级管理员实现
*/
create tablespace ts_0218
datafile 'D:\software\tools\oracle\app\oradata\orcl\ts_0218.dbf'
size 5M
--表空间创建后,需要用户去管理,自定义用户 user
/*
创建用户的语法:
create user 用户名称
identified by 密码
default tablespace 表空间的名称
*/
--创建一个用户cc去管理ts_0218这个表空间
create user u_cc
identified by 123
default tablespace ts_0218;
--强调:Oracle中没有标识列,但是有替代品(数据库对象-序列+数据库对象-触发器)
--Oracle的数据类型
--数值类型 number
--字符串类型 varchar2(长度)
create table tb_student
(
sid number primary key,
sname varchar2(50) not null,
ssex varchar2(2) check(ssex = '男' or ssex = '女'),
saddress varchar2(100) default '湖南长沙',
sfz varchar2(20) unique
);
select * from tb_student;
create table tb_score
(
sid number references tb_student(sid),
degree number
)
--oracle管理工具中左侧栏目的对象
1.function 函数
2.procedure 存储过程
3.package 程序包
4.table 表
5.index 索引
6.view 视图
7.sequence 序列
8.trigger 触发器
9.user 用户
10.tablespace 表空间
11.synonym 同义词
create tablespace ts_0218
datafile 'D:\software\tools\oracle\app\oradata\orcl\ts_0218.dbf'
size 5M
create user u_cc
identified by 123
default tablespace ts_0218;
--用户创建后需要授权
# grant 权限 to 用户
--给u_cc用户授权
grant connect,resource to u_cc;
#撤销权限
#revoke 权限 from u_cc;
revoke connect,resource from u_cc;