当前位置 : 主页 > 网络编程 > 其它编程 >

oracle授权增删改查权限_Oracle数据库简述

来源:互联网 收集:自由互联 发布时间:2023-07-02
数据库1.数据Data软件测试的对象是软件软件的组成程序文档数据数据的类型数字字符二级制文本图形声音视频2.数据库DataBase--DB通俗地说就是用来存放数据的 数据库 1. 数据 Data 软件测试
数据库1.数据Data软件测试的对象是软件软件的组成程序文档数据数据的类型数字字符二级制文本图形声音视频2.数据库DataBase--DB通俗地说就是用来存放数据的 7d38a0d1ea555228bf2d5f4b037da2d9.png

数据库

1. 数据 Data

软件测试的对象是 软件

软件的组成 程序 文档 数据

数据的类型 数字 字符 二级制 文本 图形 声音 视频

2. 数据库 DataBase --DB

通俗地说 就是用来存放数据的仓库

物理形态 -- 计算机上的文件

磁盘 -- 硬盘

3. 数据库管理系统 DBMS -- 软件程序

通俗地说 就是管理和维护数据库的软件。

主流的数据库管理系统有哪些

MySQL, Oracle, SQL Server, DB2 , Sybase ...

关系型数据库管理系统 RDBMS

关系 --- 表 table ( ) 行 列

-- 层次型 --- 网状型 --- 关系型 --- 对象型

Oracle 数据库管理系统 ---甲骨文

版本

Oracle 8i , 9i, 10g, 11g, 12c

i internet

g grid

c cloud

Oracle 11g 安装

将其安装到windows7 64bit

虚拟机 -- Vmware 15

安装Vmware 虚拟机

安装oralce数据库管理系统

Oracle home

全局数据库名字 orcl.localdomain

口令 tiger

Database Control URL 为 https://localhost:1158/em

管理资料档案库已置于安全模式下, 在此模式下将对 Enterprise Manager 数据进行加密。加密密钥已放置在文件

D:/app/Administrator/product/11.2.0/dbhome_1/localhost_orcl/sysman/config/emkey.ora 中。请务必备份此文件, 因

为如果此文件丢失, 则加密数据将不可用。

数据库管理员 DBA

普通计算机 ---安装oracle11g软件 并且启动了数据库--- 数据库服务器 DB Server

客户端服务器模型 client server mode C/S

Demon 守护进程 --- 服务

数据库最基本的两个服务

OracleOraDb11g_home1TNSListener 数据库监听服务

OracleServiceORCL 数据库基本服务

oracle 也是一种网络应用层的协议 在传输层 使用的是TCP协议 端口号是 1521

MySQL 端口号 3306

客户端工具

SQL Plus 是oracle自带的一个连接到oracle数据库服务器的一个工具

总结

数据 data 数据库 database 数据库管理系统 dbms 数据库管理员DBA

oracle11g 关系型数据库管理系统 安装 数据库名字 orcl 口令 tiger

客户端工具sqlplus

回顾

data ,database, DBMS, DBA

计算机 --- 服务器 -- 数据库服务器 DB Server

客户端工具 -------- 连接到数据库服务器

自带的工具sqlplus 命令行的方式

启动sqlplus 方式

开始--运行--cmd--sqlplus /nolog

连接到数据库指令格式语法

SQL> connect 用户名/口令 [as 连接身份] ;

connect sys/tiger as sysdba;

connect 可以缩写 conn

连接身份 表示用户连接到数据库之后拥有的权利。

数据库管理员 sysdba

数据库操作员 sysoper

普通用户 normal (默认)

内置用户 sys 必须以SYSDBA或SYSOPER身份登录

system 可以用普通身份登录

Oracle用户模式 user schema

用户zhangsan 表sales

用户lisi 表student 表score -- zhangsan.sales

在Oracle数据库中创建用户指令

创建用户的指令

create user 用户名 identified by 口令 [account lock|unlock] ;

create user jerry identified by tom account unlock;

给用户授权的指令

grant 权限|角色 to 用户;

角色 role 一个或多个权限的集合

默认有三种角色

CONNECT 角色 CREATE SESSION

RESOURCE 角色 可以创建数据库对象 比如 表

DBA 角色 管理员级别权限

建议普通用户 授予 connect 和 resource 角色的权限

grant connect to jerry;

grant resource to jerry;

撤销用户的权限的指令

revoke 权限|角色 from 用户;

revoke connect from jerry;

修改用户的指令

alter user ...

修改用户的口令

alter user 用户名 identified by 新口令 ;

alter user jerry identified by tom123;

修改用户的锁定状态

alter user 用户名 account lock|unlock;

alter user jerry account lock;

alter user jerry account unlock;

SQL 简介

Structuered Query Language 结构化查询语言,关系型数据库对数据存取、数据更新及数据库操作管理等语言。

ANSI 标准 SQL --- 增删改查

SQL分类

数据定义语言DDL : create 创建 , alter 修改 , drop 删除 等

数据操作语言DML : insert 插入 , update 更新, delete 删除 等

数据查询语言DQL : select 查询 order by 排序 group by 分组 等

事务控制语言TCL : commit 提交 savepoint 保存点 rollback 回滚

数据控制语言DCL : grant 授权 revoke 撤销

目前主流的关系型数据库都支持SQL , -- nosql

数据类型

年龄 21 --数字 214

姓名 谢睿 --字符

oralce数据库基本数据类型

字符

char(length) 固定长度 char(5) hello char(6) hello_ char() 默认 2000 字节

varchar2(length) 可变长度 varchar2(6) varchar2() 4000 字节

数字

number(p,s) p 数字的最大位数,最大38位,s指小数位数

number 1234.567 1234.567

number(6,2) 1234.567 1234.57

number(4,2) 12345.67 超出精度数据库不能存储

时间

date 存储日期和时间纪元、4位年、月、日、时、分、秒

timestamp 年月日时分秒 精确到秒后6位 而且包含时区 东8区

文件

clob 存储大的文本如 xml文档

blob 存储二进制对象 图形、声音、视频等

文件的路径---字符串

计算机基本存储单位 --存储设备 内存RAM 磁盘HD

计算机底层是数字存储的 0 1 二进制数 01000001 表示字母A 编码 ASCII

一个二进制位 bit 比特

一个字节 byte 8 bit 比特

1K 1024 byte

1M 1024 KB

1G 1024 MB

在oracle 中有一些内置的函数

sysdate

systimestamp

select sysdate from dual ;

dual 是一个伪表 ,满足select语句的完成性

关系型数据库

二维表的方式 表 table 就是数据库里最基本对象

列 column 实体的属性 key 键

行 row 实体 记录 record

--一行数据 一条记录

表的代表的是实体的集合

满足第一 二 三 范式

模型 E-R 实体-关系 - 员工表 n---1 部门表

约束 限制

主键 primary key 唯一地代表一个实体的键 唯一 不能为空

外键 foreign key 建立表与表之间的关系

非空 not null

唯一 unique

检查 check

使表包括数据能满足数据库完整性一致性

创建表

学生信息表 infos --表示注释

STUID varchar2(7) not null, --学号

STUNAME --姓名

GENDER --性别

AGE --年龄

SEAT --座位编号

ENROLLDATE -- 入学时间

STUADDRESS -- 住址

CLASSNO -- 班号

create table 表名 stuid , stuname .... ;

SQL> create table infos

2 (

3 stuid varchar2(7) not null ,

4 stuname varchar2(10) not null ,

5 gender varchar2(2) not null ,

6 age number(2) not null ,

7 seat number(2) not null ,

8 enrolldate date ,

9 stuaddress varchar2(50) default 地址不详 ,

10 classno varchar2(4) not null

11 )

12 /

设置约束

1 建表的时候指定约束

2 建表后插入数据之前设置约束

alter table 表名 add constraint 约束名 关键字 (列名)

alter table infos add constraint pk_infos_stuid primary key(stuid) ;

案例1创建一个学生信息INFOS表和约束

代码演示Oracle创建表和约束

CREATE TABLE INFOS

(

STUID VARCHAR2(7) NOT NULL, --学号 学号‘S’班号2位序号

STUNAME VARCHAR2(10) NOT NULL, --姓名

GENDER VARCHAR2(2) NOT NULL, --性别

AGE NUMBER(2) NOT NULL, --年龄

SEAT NUMBER(2) NOT NULL, --座号

ENROLLDATE DATE, --入学时间

STUADDRESS VARCHAR2(50) DEFAULT 地址不详, --住址

CLASSNO VARCHAR2(4) NOT NULL --班号 班号学期序号班级序号

)

/ ①

ALTER TABLE INFOS ADD CONSTRAINT PK_INFOS PRIMARY KEY(STUID) ②

/

ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_GENDER

CHECK(GENDER 男 OR GENDER 女) ③

/

ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_SEAT

CHECK(SEAT >0 AND SEAT <50) ④

/

ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_AGE

CHECK(AGE >0 AND AGE<100) ⑤

/

ALTER TABLE INFOS ADD CONSTRAINT CK_INFOS_CLASSNO

CHECK((CLASSNO >1001 AND CLASSNO<1999) OR

(CLASSNO >2001 AND CLASSNO<2999)) ⑥

/

ALTER TABLE INFOS ADD CONSTRAINTS UN_STUNAME UNIQUE(STUNAME) ⑦

/

案例2创建一个成绩表SCORES表和约束

代码演示Oracle创建表和约束

CREATE TABLE SCORES

(

ID NUMBER , --ID ①

TERM VARCHAR2(2), --学期 S1或S2

STUID VARCHAR2(7) NOT NULL, --学号

EXAMNO VARCHAR2(7) NOT NULL, --考号 E班号序号

WRITTENSCORE NUMBER(4,1) NOT NULL, --笔试成绩

LABSCORE NUMBER(4,1) NOT NULL --机试成绩

)

ALTER TABLE SCORES

ADD CONSTRAINT CK_SCORES_TERM CHECK(TERM S1 OR TERM S2)

/

ALTER TABLE SCORES

ADD CONSTRAINT FK_SCORES_INFOS_STUID FOREIGN KEY(STUID) REFERENCES INFOS(STUID) ② --建立外键约束

/

-- 外键约束名字 关键字 列名 引用或参考 表列

-- 注 先设置主键 再设置外键

student( --学生表

sno varchar2(3) not null, --学号

sname varchar2(28) not null, --姓名

ssex varchar2(8) not null, --性别

sbirthday date, --生日

sclass varchar2(5), --班级

constraint pk_student primary key(sno) --设置主键

)

SNO SNAME SSEX SBIRTHDAY SCLAS

--- ---------------------------- -------- --------- -----

108 zenghua male 01-SEP-77 95033

105 kuangming male 02-OCT-75 95031

107 wangli female 23-JAN-76 95033

101 lijun male 20-FEB-76 95033

109 wangfang female 10-FEB-75 95031

103 lujun male 03-JUN-74 95031

course( --课程表

cno varchar2(5) not null, --课程编号

cname varchar2(50) not null, --课程名

tno varchar2(3) not null, --教师编号

constraint pk_course primary key(cno)

)

CNO CNAME TNO

----- -------------------------------------------------- ---

3-105 Introduction to Computers 825

3-245 Operating System 804

6-166 Digital Circuit 856

9-888 Advanced Mathematics 831

score( --成绩表

sno varchar2(3) not null, --学号

cno varchar2(5) not null, --课程编号

degree number(4,1), --分数

constraint pk_score primary key(sno,cno) --主键

)

SNO CNO DEGREE

--- ----- ----------

103 3-245 86

105 3-245 75

109 3-245 68

103 3-105 92

105 3-105 88

109 3-105 76

101 3-105 64

107 3-105 91

108 3-105 78

101 6-166 85

107 6-166 79

108 6-166 81

teacher( --教师表

tno varchar2(3) not null, --教师编号

tname varchar2(28) not null, --教师姓名

tsex varchar2(8) not null, --教师性别

tbirthday date, --教师生日

prof varchar2(50), --职称

depart varchar2(15) not null, --系别

constraint pk_teacher primary key(tno) --主键

)

TNO TNAME TSEX TBIRTHDAY PROF DEPART

--- ---------------------------- -------- --------- -------------------------------------------------- ---------------

804 licheng male 02-DEC-58 associate professor cs

856 zhangxu male 12-MAR-69 lecturer ee

825 wangping female 05-MAY-72 assistant cs

831 liubing female 14-AUG-77 assistant ee

【本文转自:韩国cn2服务器 http://www.558idc.com/kt.html欢迎留下您的宝贵建议】
网友评论