0
点赞
收藏
分享

微信扫一扫

Oracle快速入门 基本操作(必知)

罗蓁蓁 2022-04-22 阅读 61

目录

一、需要启动的服务(必知):

二、常用数据表(常识)

二、关于Oracle数据库的开发环境(必知)

三、PL/SQL Developer 集成开发环境

四、新建SQL窗口(必知)

五、账户、表空间、数据库(常识)

六、Oracle的安装--号称史上最麻烦的安装

七、启动服务,进入Oracle,PL/SQL(常识)

        7.1 创建数据库和账户(所产生的文件)

7.2 创建表空间

        7.2 给表空间分配账户

        7.3 要给角色授权

        7.4 撤销权限或角色:

八、建表     

九、综合案例(代码部分)

        1.SYS 超级管理员 (SQL脚本)

         2.Scott 普通用户 (SQL脚本)

九、拓展(Oracle的历史背景)

        1.Oracle11g的背景

        2. Oracle用户的由来:


一、需要启动的服务(必知):

        OracleServiceORCL                  oracle数据库服务
        OracleOraDb11g_home1TNSListener            oracle监听服务        

        操作如下:输入 services.msc 命令     确定   如下:

        确定显示如图鼠标右击打开即可:

二、常用数据表(常识)

        如emp、dept、salgrade等表,这几个表存储在系统账号scott下,可以通过scott账号查看表格的基本情况。

二、关于Oracle数据库的开发环境(必知)

        启动步骤:Oracle->应用程序开发->SQL Plus
        用户名:scott
            口令:tiger(密码,开始为默认为tiger,根据设置而定)
            主机字符串:orcl

        如图:

三、PL/SQL Developer 集成开发环境

        它是Oracle的第三方工具;
        因为oracle的开发环境糟糕,因此我们采用第三方的

四、新建SQL窗口(必知)

        文件 --> 新建 --> SQL窗口

        作用:用sql脚本代码完成数据库的增、删、改、查操作

五、账户、表空间、数据库(常识)

        结构:

        开辟(分配)数据库空间----表空间(TableSpace)。
表空间代替了数据库,创建数据库就是开辟账户空间。

六、Oracle的安装--号称史上最麻烦的安装

        安装教程: Oracle 安装

七、启动服务,进入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;

            用;号隔开,代表代码写完了,可以执行了

            如果你是管理员账号,调别的用户的账号可以吗?可以
            --账户.表;
                    select * from scott.emp;

    如果你是一般用户的账号可以调别人的吗?正常情况下不行,除非授权。
        关于账户在Oracle有另一个名词叫:模式
    select * from 模式.表;

        比如scott就是个模式
        比如其它的对象就是个模式
        每个对象都是个模式

        进入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    

        7.2 给表空间分配账户

                1.创建账户,指定访问表空间,但未给它赋任何权限,登录时是登不了的!
                    create user 用户名
                    identified by 密码
                    [default tablespace 表空间]
                    [temporary tablespace 临时的表空间]  
--该行一般不用

            案例:

    create user u_dml
    indentified by 123
    default tablespace t_table

        7.3 要给角色授权

        7.4 撤销权限或角色:

八、建表     

           建的表都在Tables里面。
                    两种建表方式:
                            1.视图
                            2.代码

create table tb_88
(
    sid number,           --int类型用number
    sname varchar2(55),   --没有varchar
    sex varchar2(10)
)

九、综合案例(代码部分)

        1.SYS 超级管理员 (SQL脚本)

--创建表空间
create tablespace ts_sb
datafile 'D:\software\tools\oracle\app\oradata\orcl\ts_sb.dbf'
size 5M


create user u_zz
identified by 123
default tablespace ts_sb

#分配权限或角色
grant  privileges or role to user;
#撤销权限或角色
revoke  privileges or role from user;

#问题:创建的u_zz用户登录失败

#给予u_zz分配或角色
grant connect,resource to u_zz;

#撤销u_zz用户 权限或角色
revoke connect,resource from u_zz;


--词汇:模式
select * from scott.emp;

         2.Scott 普通用户 (SQL脚本)

#注释
-- 单行注释
/*多行注释*/

#oracle数据库时不区分大小写的
#建议全大写,尤其是关键字

#Oracle数据库创建表时必须得有表空间
#学会创建表空间(类似sqlserver中的数据库)
#表空间:tablespace
#表空间的作用:存储数据表
#表空间创建完成之后必须使用"用户"去管理这个表空间。
#表空间创建必须是SYS超级管理员登录创建
/*
创建语法:
   create tablespace 表空间名称
   datafile '数据文件的存储路径(oracle安装目录)'
   size 大小
*/
--创建一个表空间存储数据表
create tablespace ts_sb
datafile 'D:\software\tools\oracle\app\oradata\orcl\ts_sb.dbf'
size 5M

#表空间创建完成后使用用户操作
#用户管理
#用户创建必须是SYS超级管理员登录创建
/*
语法:
     create user 用户名称
     identified by 初始密码
     default tablespace 表空间名称

*/
create user u_zz
identified by 123
default tablespace ts_sb

#用户创建完成后需要管理分配权限才能正常登录
# connect  resource
#分配权限或角色
grant  privileges or role to user;
#撤销权限或角色
revoke  privileges or role from user;

---------------------------------------------------------
/*
浏览器窗口中的关键词
        user   用户
        tablespace 表空间
        table      表格
        function   函数
        procedure  存储过程
        packages   程序包
        trigger    触发器
        sequence   序列
        synonyms   同义词(别名)
*/

#scott用户下四张表
select * from emp;--员工表
select * from dept;--部门表
select * from bonus;
select * from salgrade


--创建表
#考虑字段的类型
#oracle中的类型: 数值(number)字符串(varchar2)
/*
语法
create table tb_名称
(
       字段1 数据类型,
       字段1 数据类型,
       字段1 数据类型
)
*/
--创建一个学生信息表
create table tb_student
(
       sid number,
       sname varchar2(50),
       ssex varchar2(2)
)
#查询数据
select * from tb_student;
#添加数据
insert into tb_student values(1,'张三','男')
#删除数据
delete from tb_student where sid = 1;
#修改数据
update tb_student set sname = '宋威' where sid = 1;


#约束:限制数据
#主键约束   primary key
#非空约束   not null
#检查约束  check
#默认约束  default
#唯一约束  unique
#外键约束  references

create table tb_stu
(
       sid number primary key,
       sname varchar2(100) not null,
       ssex varchar2(2) check (ssex = '男' or ssex = '女'),
       saddress varchar2(100) default  '湖南省',
       sfz varchar2(100) unique
      
)
create table tb_score
(
       sid number references tb_stu(sid),
       gride number
)

九、拓展(Oracle的历史背景)

        1.Oracle11g的背景

        2. Oracle用户的由来:

举报

相关推荐

0 条评论