学习Oracle笔记

这篇博客介绍了Oracle数据库的基础知识,包括数据库的概念、Oracle的历史、不同版本的功能以及安装OracleXE的注意事项。详细阐述了数据库用户角色、SQL Plus的使用、表空间与用户创建、权限授权等内容,同时深入讲解了数据操纵语言(DML),如查询、删除、更新和分页等操作。
摘要由CSDN通过智能技术生成

Oracle

1,什么是信息,数据,数据库,数据库管理系统(DBMS)?

2,DBMS是对数据进行管理的,网络软件的服务端

3,DBMS+管理的数据=数据库

4,Oracle的历史

  • 文件型数据库

  • 层状数据库

  • 网状数据库

  • 关系型数据库管理系统

    • 二维表存储数据
    • 表之间有外键关系
    • 符合实体关系模型
  • Oracle分为

    • 历史版本8i,9i,10g(rid),11g,12c
    • 功能版本
      • 企业版
      • 标准版
      • Express快捷版
        • 安装包只有300M,安装好有1.5G多
        • 免费进行开发,部署和分发
        • XE将最多存储4GB的用户数据
        • 最多使用1GB内存,并在主机上使用一个CPU
        • 只能建立一个数据库

    数据库使用者角色

    • 数据开发人员
    • DBA数据库管理人员
    • BI(商业分析人员)

5,Oracle xe数据库的安装

​ 不用安装在中文路径下

​ 在本子上记录密码

6,启动Oracle

image-20211018142846908

image-20211018142920419

​ 查看数据库是否启动

  • 使用SQL Plus连接数据库管理系统
    • 默认有两个用户
      • sys系统权限最高的用户,不能使用normal 身份登录
      • system系统中权限最高的用户,它可以使用normal 身份登录
    • 用户登录Oracle有3个常用角色
      • sysdba 数据库管理者
      • sysoper 数据库操作者
      • normal 普通身份登录
  • 登录
    • image-20211018144453820
    • image-20211018150146844
  • 查看监听状态
    • image-20211018150352667
  • 连接其他人
    • image-20211018150512475
  • 查看是否能连接到其他人
    • image-20211018150603980

7,sqlplus的使用

  • sqlplus命令
    • 登录
    • 退出
    • 连接
    • 断开连接 disconn
  • sql语句
  • PL Sql语句 (过程化SQL语句)

创建表空间

 create tableSpace TB_TEST2
    datafile 'D:\oraclexe\app\oracle\oradata\XE\TB_TEST2.dbf'
    size 10M
    autoextend on next 1m;

创建用户

create user test_user2
    identified by 123456
    --default tableSpace TB_TEST2;

授权

grant resource,connect to test_user2;
  • ​ resource 用户角色表示的是 对象的所有者 增删改模式对象
  • ​ connect用户角色表示的是 连接数据库,对对象进行CRUD 的权限

查看当前用户

select user from dual;

切换表空间

alter user fanaizhen default tablespace NORTHWIND;

查看表空间

select * from user_users;

8,安装PL SQLDelvoper

PLD的使用

  1. SQL窗口
  2. 命令窗口 执行sqlPlus
  3. 程序窗口 定义各种模式对象

varchar与varchar2的区别?

  • varchar是标准sql里面的, varchar2是oracle提供的独有的数据类型。
  • 但是oracle准备在下一版本,不支持varchar类型。
  • varchar对于汉字占两个字节,对于数字,英文字符是一个字节,占的内存小,varchar2具体要看数据库使用的字符集
  • varchar对空串不处理,varchar2将空串当做null来处理。

创建表空间:类似于MySql中的数据库

创建用户:生产系统中,一个服务器只用一个Oracle数据库,一个数据库实例只能连接一个数据库,多个软件系统工作在同一服务器,一定要公用数据库,为了区分模式对象,就需要依据软件系统,建立不同的用户。表空间和用户是多对多关系

授权:

​ resource 模式对象所有者(开发权限)

​ connect 数据进行增删改查(生产权限)

重新登录:

​ Scott用户的示例数据库

sql语句,结构化查询语言(SQL-89,SQL-92)

  • DDL 数据定义语言(增删改数据库模式对象)

  • DML 数据操作语言(数据进行增删改查)

  • DCL 数据控制语言(控制数据库对象)

数据操纵语言(DML)

    • 1,投影(对字段的操作)

      • 1,选取全部字段

      • select * from emp;
        
      • 2,选取部分字段

      • select empno from emp;
        select empno,ename from emp;
        
      • 3,选取部分字段,并且调整顺序

      • select ename,empno from emp;
        
      • 4,可以使用函数,或者计算,产生表达式

      • select substr(ename,1,2) from emp;--前两个字符
        --null做任何运算结果都是null
        select ename,sal,comm,sal+nvl(comm,0) from emp;
        
      • 5,别名

      • select ename,sal,comm,sal+nvl(comm,0) as 收入 from emp;
        select ename,sal,comm,sal+nvl(comm,0) as "收 入" from emp;
        select ename,sal,comm,sal+nvl(comm,0)  "收 入" from emp E;
        select ename,sal,comm,sal+nvl(comm,0)  "收 入" from emp as E;--不行,表的别名是没有as
        
      • 6,常数列

      • select ename,1 常数列,sysdate,'abcd' from emp;
        
      • 7,剔重(就近原则)

      • select distinct job from emp;--只按投影列表(选择的字段列表)来剔重
        select dist job from emp;-- 不行
        
      • 8,分支

      • select 
        case deptno
        	when 10 then 'A部门'
        	when 20 then 'B部门'
        	else
        		'其它部门'
        end case
        from emp;
        
      • select 
        case 
            when sal between 0 and 2000 then '低工资'
            when sal between 2001 and 5000 then '高工资'
            else '其它'
        end case
        from emp;
        
    • 2,选择

      • 在结果集中选择出部分记录行

      • select * from emp
        	where ;
        		--关系运算=,!=,<>,>,<,>=,<=,in,not in,is null,is not null,between,
        		--逻辑运算
        		--逻辑谓词some,any,all,exists
        between ...and 是闭区间
                   is null 是判别null的正确方式,不能用=null
                   like 
        select * from emp
            where comm=null ;--错
        select * from emp
            where comm is null ;
        select * from emp
            where ename like 'A';--错
        select * from emp
            where ename like '%A%';
        select * from emp
            where ename like 'A____';
        select * from emp
            where deptno=10 or  deptno=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值