zoukankan      html  css  js  c++  java
  • 初学Oracle的笔记(1)——基础内容(实时更新中..)

    1.查看主机名称:

    SQL> select host_name from v$instance;

    HOST_NAME
    ----------------------------------------------------------------
    mycomputer-PC


    2.主要三张表中的数据:

    (1)emp 员工表
    SQL> set line 120;
    SQL> select * from emp;

    EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
    ---------- ---------- --------- ---------- -------------- ---------- ---------- ----------
    7369 SMITH CLERK 7902 17-12月-80 800 20
    7499 ALLEN SALESMAN 7698 20-2月 -81 1600 300 30
    7521 WARD SALESMAN 7698 22-2月 -81 1250 500 30
    7566 JONES MANAGER 7839 02-4月 -81 2975 20
    7654 MARTIN SALESMAN 7698 28-9月 -81 1250 1400 30
    7698 BLAKE MANAGER 7839 01-5月 -81 2850 30
    7782 CLARK MANAGER 7839 09-6月 -81 2450 10
    7788 SCOTT ANALYST 7566 19-4月 -87 3000 20
    7839 KING PRESIDENT 17-11月-81 5000 10
    7844 TURNER SALESMAN 7698 08-9月 -81 1500 0 30
    7876 ADAMS CLERK 7788 23-5月 -87 1100 20

    EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
    ---------- ---------- --------- ---------- -------------- ---------- ---------- ----------
    7900 JAMES CLERK 7698 03-12月-81 950 30
    7902 FORD ANALYST 7566 03-12月-81 3000 20
    7934 MILLER CLERK 7782 23-1月 -82 1300 10

    (2)salgrade:工资级别表
    SQL> select * from salgrade;

    GRADE LOSAL HISAL
    ---------- ---------- ----------
    1 700 1200
    2 1201 1400
    3 1401 2000
    4 2001 3000
    5 3001 9999

    (3)dept:部门表
    SQL> select * from dept;

    DEPTNO DNAME LOC
    ---------- -------------- -----------
    10 ACCOUNTING NEW YORK
    20 RESEARCH DALLAS
    30 SALES CHICAGO
    40 OPERATIONS BOSTON


    3.查看表结构:
    SQL> desc emp;
    名称 是否为空? 类型
    ----------------------------------------------------------------- -------- ---------------
    EMPNO NOT NULL NUMBER(4)
    ENAME VARCHAR2(10)
    JOB VARCHAR2(9)
    MGR NUMBER(4)
    HIREDATE DATE
    SAL NUMBER(7,2)
    COMM NUMBER(7,2)
    DEPTNO NUMBER(2)


    4.SQL *plus中显示sql语句:输入“L”及修改sql语句:输入“n text”
    SQL> select sql // emp表中没有sql这列,故不能正确查询
    2 from emp
    3 where sal>1000;
    select sql
    *
    第 1 行出现错误:
    ORA-00904: "SQL": 标识符无效


    SQL> L           //输入“L”,能将之前缓冲区中的sql语句显示出来,显示最后输入的一句
    1 select sql
    2 from emp
    3* where sal>1000
    SQL> 1 select sal        //输入“n text”,n表示的是第几行,text表示的是要替换的值
    SQL> /           //输入“/或者是R”,重新运行sql缓冲区中的语句

    SAL
    ----------
    1600
    1250
    2975
    1250
    2850
    2450
    3000
    5000
    1500
    1100
    3000

    SAL
    ----------
    1300

    已选择12行。

    5.SQL *plus中删除行的语句:输入关键字“DEL n”

    SQL> select *
    2 from dept
    3 where deptno=10;

    DEPTNO DNAME LOC
    ---------- -------------- ------------
    10 ACCOUNTING NEW YORK

    SQL> l
    1 select *
    2 from dept
    3* where deptno=10
    SQL> del 3                                      //输入关键字“DEL n”,表示的是删除第n行的语句
    SQL> /                                            //重新运行缓冲区中的语句

    DEPTNO DNAME LOC
    ---------- -------------- ------------
    10 ACCOUNTING NEW YORK
    20 RESEARCH DALLAS
    30 SALES CHICAGO
    40 OPERATIONS BOSTON

     6.修改(替换)指定的语句内容:输入“C/原文内容/要替换的内容” 
     SQL> select dname

    2 from dept
    3 where deptno=10;

    DNAME
    --------------
    ACCOUNTING

    SQL> l                                     //输入“L”,读取缓冲区中的语句
    1 select dname
    2 from dept
    3* where deptno=10
    SQL> c/dname/deptno              //直接输入“C/原文内容/要替换的内容” ,若没有指定行,则找不到字符串
    SP2-0023: 未找到字符串
    SQL> l
    1 select dname
    2 from dept
    3* where deptno=10
    SQL> 1                                     //要先输入指定的行号
    1* select dname
    SQL> c/dname/deptno;
    1* select deptno
    SQL> /

    DEPTNO
    ----------
    10

    7.生成.sql脚本文件的方法:输入“SAVE 路径/文件名”
     SQL> l

    1 select deptno
    2 from dept
    3* where deptno=10
    SQL> save E:/sqltest.sql;
    已创建 file E:/sqltest.sql                               //注意:在保存的sql脚本文件中的内容为缓冲区中的语句内容,而缓冲区中保存的是最后一次执行的语句


    8.运行sql脚本文件的方法:输入“@(start) 路径/文件名”
     
    SQL> @ E:/sqltest.sql;

    DEPTNO
    ----------
    10

    9.获取脚本内容的方法:输入“Get 路径/文件名

    SQL> get E:/sqltest.sql;

    1 select deptno
    2 from dept
    3* where deptno=10

    也可以直接在记事本中打开编辑:ed 路径/文件名


    10.比较重要的SPOOL命令:保存完整的脚本及结果

    SQL> spool E:/spooltest.sql;
    SQL> select *
    2 from dept;

    DEPTNO DNAME LOC
    ---------- -------------- -------------
    10 ACCOUNTING NEW YORK
    20 RESEARCH DALLAS
    30 SALES CHICAGO
    40 OPERATIONS BOSTON

    SQL> select deptno
    2 from dept;

    DEPTNO
    ----------
    10
    20
    30
    40

    SQL> spool off;
    SQL> /

    DEPTNO
    ----------
    10
    20
    30
    40

    生成的脚本中的内容如图: 

     

    今天的笔记就先做到这,希望对和我一样的初学者有帮助。

  • 相关阅读:
    objective c 中基本类型的操作
    [转载]Server.MapPath和Request.MapPath()的用法
    [转载]mstsc远程报:这可能是由于CredSSP 加密Oracle修正的两种完美解决方法
    [转载]忘记token怎么加入k8s集群
    ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded; 的解决办法
    [转载]AutoMapper 9.0的改造
    [转载]k8s注册节点提示Docker SystemdCheck]: detected cgroupfs" as the Docker cgroup dr iver. The r ecommended dr fiver is" systemd"
    [转载]Linux的Vi命令详解
    [转载]查看虚拟机里的Centos7的IP
    [转载]centos关闭swap分区
  • 原文地址:https://www.cnblogs.com/jianglan/p/2382517.html
Copyright © 2011-2022 走看看