当前位置:Gxlcms > 数据库问题 > oracle基础

oracle基础

时间:2021-07-01 10:21:17 帮助过:22人阅读

 

1.1 Prelude

  1. 登录 SQLPLUS
    1. <span style="font-size: 18px">cmd
    2. sqlplus [用户名]/[密码][@数据库] [参数]
    3. sqlplus sys/orcl as sysdba -- 登录 sys 用户,必须指定 sysdba 或 sysoper 身份
    4. sqlplus system/orcl -- 数据库管理员
    5. </span>
  2. 创建一个自己的用户(比如 vip/vip)
    1. <span class="org-keyword" style="font-size: 18px">create <span class="org-builtin">user vip identified <span class="org-keyword">by vip; <span class="org-comment">-- 注意,新创建的用户,什么权限都没有,需要授权后才能使用
    2. <span class="org-keyword">grant <span class="org-keyword">create <span class="org-keyword">session <span class="org-keyword">to vip; <span class="org-comment">-- 授予登录的权限
    3. <span class="org-keyword">grant <span class="org-keyword">connect <span class="org-keyword">to vip; <span class="org-comment">-- 角色是很多权限的打包,connect 是一种角色,它包含了连接查看数据的一些基本权限
    4. <span class="org-keyword">grant dba <span class="org-keyword">to vip; <span class="org-comment">-- dba 是绝大多数权限的集合,它基本能做所有事情,所以很少单独授予用户。但在测试环境中,这样,很爽。
    5. <span class="org-comment">-- 上面的创建用户、授予权限两步操作,可以简化为下面一步:
    6. <span class="org-keyword">grant dba <span class="org-keyword">to vip identified <span class="org-keyword">by vip; <span class="org-comment">-- 注意,使用分号结尾
    7. </span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>
  3. 切换到用户
    1. <span style="font-size: 18px">sqlplus vip/vip -- 在 cmd 下
    2. conn vip/vip -- 在 sqlplus 中
    3. </span>
  4. 使用
    1. <span style="font-size: 18px">create table aaa (id int);
    2. </span>
  5. 激活内置的测试账号,这里面有几张示例表,可以用它们练习下查询
    1. <span style="font-size: 18px">alter user scott account unlock;
    2. conn scott/tiger
    3. </span>
  6. 修改密码
    1. <span style="font-size: 18px">alter user scott identified by [newpassword];
    2. </span>

1.2 Sqlplus

这是一个轻量级的功能强大的客户端, 是 dba 必须掌握的工具。

我们可以配置 sqlplus 的一些行为,两个命令:

  1. show. 用来显示配置参数
  2. set. 用来设置配置参数

比如:

  1. <span style="font-size: 18px">show all -- 显示所有配置参数
  2. show lines -- 显示 lines 的配置信息
  3. show errors -- 显示错误
  4. set lines[ize] 333 -- 将行宽设置为 333
  5. set pages[ize] 444 -- 将每页的记录数设置为 444
  6. set echo off/on -- 导入外部文件,是否要显示原始 sql 语句
  7. set feedback on/off -- 是否显示“查询到xx数据”等信息
  8. set timing on/off -- 是否显示语句的执行时间
  9. set autocommit on/off -- 是否启用自动提交
  10. set autotrace on/off -- 是否输出执行计划
  11. set serverouput on/off -- 是否显示来自服务端的信息
  12. column aaa format a22 -- 将列 ‘aaa‘ 的宽度限制为 22 个字幕‘a‘的大小。column 命令很强大,语句也复杂,此处不提。
  13. </span>

在 sqlplus 中有缓冲区的概念:

  1. <span style="font-size: 18px">缓冲区是用来记录上一次执行的命令语句的空间。
  2. </span>

我们可以通过一些列简单命令,对上一次输入的语句进行一些控制:

  • 增 append/insert
  • 删 delete
  • 改 change
  • 查 list
  • 执行修改后的语句 run 或者 /

例子:

  1. <span style="font-size: 18px">list -- 显示完整的缓存区
  2. list 3 -- 显示并定位到第三行
  3. list 3 5 -- 显示第三行到第五行的内容
  4. list last -- 定位到最后一行
  5. </span>
  1. <span style="font-size: 18px">list 3
  2. del -- 删除第三行
  3. </span>
  1. <span style="font-size: 18px">list 3
  2. append order by sal -- 定位到第三行,然后追加 order by sal
  3. insert order by sal -- 开启新的一行,插入 order by sal
  4. </span>
  1. <span style="font-size: 18px">list 3
  2. change /emp/dept -- 定位到第三行,将这一行的 emp 换为 dept
  3. </span>

还有其他一些命令:

  1. <span style="font-size: 18px">get D:\aaa.sql -- 将文件加载到缓冲区,但不执行
  2. start D:\aaa.sql -- 将文件加载到缓冲区,并且执行
  3. @D:\aaa.sql -- 是上面一条语句的简写形式
  4. save D:\bbb.sql -- 将缓冲区的内容保存到文件中
  5. edit -- 调用外部编辑器,编辑缓冲区
  6. clear screen -- 清空缓冲区
  7. </span>
  1. <span style="font-size: 18px">show user -- 显示当前用户
  2. show parameters -- 显示 oracle 的配置参数
  3. show parameters nls -- 显示 oracle 中所有跟语言配置相关的一些参数
  4. describe emp -- 显示 emp 表的结构信息</span>

oracle基础

标签:cmd   限制   cot   执行计划   ext   sys   lock   大小   unlock   

人气教程排行