打开系统输出 set serveroutput on; 只需要打开一次
**书写格式 以斜杠/号 结束(基本结构)
--declare --语句后面必须以;号结束
declare
--用来区分变量名和表里的名 接受查询的结果
--声明变量,游标,类型
v_name varchar2(50);
--begin //相当于大括号
--两种赋值方式 --注释
--v_name:='张三';
v_name:='&输入name的值'
--输出
--||双竖线用来连接字符串
--输出语句 line 是换行
dbms_output.put_line('你输入的姓名是:'||v_name);
--put 能输出,会被缓存,只有遇到put_line (换行)才会全部输出
dbms_output.put('你输入的姓名是:'||v_name);
--end;
plsql相关知识点:
1.声明一个变量,使它的类型与某个变量或数据库基本表中某个列的数据类型一致。
(不知道该变量或列的数据类型)可以使用 %TYPE 。

DECLARE
         Teacher_name CHAR(5);
         Student_name Teacher_name%TYPE;
……END
BEGIN 

2.plsql的记录集类型一共分为四种类型
** 题目:告诉部门编号,告诉平均工资 同一个表
--列类型 第一种

declare 
--v_deptno number(10);
--取sal一列的类型当做变量的类型  表名.列名%type
v_deptno emp.deptno%type;
--v_avgsal number(10,2);
--取sal一列的类型当做变量的类型  表名.列名%type
v_avgsal emp.sal%type;  
begin 
v_deptno:=&deptno;
--只能保存一个结果
select avg(sal) into v_avgsal from emp where deptno=v_deptno;
dbms_output.put_line('平均工资'||v_avgsal);
end;

--行类型 第二种

declare
emp_row emp%rowtype;
begin 
--选取员工号7788 的一行 存入变量emp_row中
select * into emp_row from emp where empno=7788;
dbms_output.put_line('姓名:'||emp_row.ename);
dbms_output.put_line('职位:'||emp_row.job);

end;

--记录集类型 第三种

--输入一个员工编号,输出他的姓名,职位,薪水 还有部门的名称
declare 
--声明一个记录集类型
type myRecord is record
(
--四个属性 (变量名 数据类型)
ename emp.ename%type,
--变量名与表里面的名无关,随便命名
job emp.job%type,
sal emp.sal%type,
dname dept.dname%type
);
--声明一个变量(变量名  类型;)
myrow myRecord;
begin
select ename,job ,dname into myrow from emp e
inner join  dept d
on e.deptno =d.deptno
where empno=7788;
dbms_output.put_line('姓名'||myrow.ename);--记录集中声明的变量名ename
dbms_output.put_line('职位'||myrow.job);--记录集中声明的变量名job
dbms_output.put_line('薪水'||myrow.sal);--记录集中声明的变量名sal
dbms_output.put_line('部门'||myrow.dname);--记录集中声明的变量名dname
end;

--游标类型 第四种

declare 
type mycursor is ref cursor; 
mycur mycursor;
emprow emp%rowtype;
begin 
open mycur for select * from emp where deptno=10;
loop 
fetch mycur into emprow;
exit when mycur%notfound;
dbms_output.put_line(emprow.ename||' '||emprow.job||' '||emprow.hiredate);
end loop;
close mycur;
end;

Oracle之plsql快速入门的更多相关文章

  1. oracle 11g express 快速入门

    创建表空间CREATE TABLESPACE testdb LOGGING DATAFILE 'F:\oracle\app\oracle\oradata\XE\testdb.dbf' SIZE 100 ...

  2. plsql快速入门

    汉化plsql方法: 本来想直接使用英文版的,但是太多专业名词看不懂,只好先汉化熟悉一下先. 安装好plsq后,百度下载plsql汉化包 执行汉化包里面的安装程序,安装目标路径选择plsql的安装路径 ...

  3. (4)Maven快速入门_4在Spring+SpringMVC+MyBatis+Oracle+Maven框架整合运行在Tomcat8中

    利用Maven 创建Spring+SpringMVC+MyBatis+Oracle 项目 分了三个项目  Dao   (jar)   Service (jar)   Controller (web) ...

  4. Toad快速入门

    Toad快速入门       在实际中,Toad的用户很少用到其强大的新特性,同时新用户的摸索式熟悉Toad往往花费更多的时间.为此,铸锐数码为每个新购买Toad客户,提供两人次的在线培训服务,帮助客 ...

  5. Mybatis框架 的快速入门

    MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...

  6. c语言快速入门3

    如果你想快速入门计算机,可以参考我的上一篇帖子,先了解一些必备的软知识,然后再来进行语言的快速入门 计算机入门基础知识 c语言快速入门1 c语言快速入门2 3.4.1 字符和字符串 字符:'' 单个  ...

  7. spring快速入门(三)

    一.在spring快速入门(二)的基础上,原先我们是采用构造方法完成对象的注入.这里还有其他的方法可以完成注入,通过set方法来完成. 修改UserActionImpl package com.mur ...

  8. spring快速入门(二)

    一.在spring快速入门(一)的基础上,我们来了解spring是如何解决对象的创建以及对象之间的依赖关系的问题 (比如client中依赖UserAction的具体实现,UserActionImpl中 ...

  9. Linux快速入门01-基础概念

    4年多前,刚到上海时报过一个关于Oracle的培训班,在那里接触到了Linux,不过一直都没真正去试着使用它.现在经过慢慢的成长,越来越觉得,Linux是每一个服务端工程师必须掌握的系统,即使是现在最 ...

随机推荐

  1. Spring+SpringMVC+MyBatis深入学习及搭建(五)——动态sql

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6908763.html 前面有讲到Spring+SpringMVC+MyBatis深入学习及搭建(四)——My ...

  2. [Leetcode] Binary search -- 475. Heaters

    Winter is coming! Your first job during the contest is to design a standard heater with fixed warm r ...

  3. 测序分析软件-phred的安装

    1.进入phred官网,给作者写信,获得所需的软件,大约需要两三天的时间即可收到回信. 2.根据作者的指示下载,解压相应软件. 3.以笔者本人的安装为例unbuntu系统(phred自带的instal ...

  4. ionic2新手入门整理,搭建环境,创建demo,打包apk,热更新,优化启动慢等避坑详解

    onic官方文档链接:http://ionicframework.com/docs/ 如果是新的环境会有很多坑,主要是有墙,请仔细阅读每个步骤 文档包含以下内容: l  环境搭建 l  创建demo并 ...

  5. C++构造函数(二)

    本篇是介绍C++的构造函数的第二篇(共二篇),属于读书笔记,对C++进行一个系统的复习. 复制构造函数 复制构造函数是构造函数的一种,也被称为拷贝构造函数,他只有一个参数,参数类型是本类的引用.默认构 ...

  6. ASP.NET MVC开发学习过程中遇到的细节问题以及注意事项

    1.datagrid中JS函数传值问题: columns: { field: 'TypeName', title: '分类名称', width: 120, sortable: true, format ...

  7. go 测试sort性能

    package main import "fmt" import "os" import "flag" import "bufio ...

  8. ThinkPHP3.2 生成二维码

    下面是整合将phpqrcode整合到TP生成二维码就可以解决这个问题了.其实也很简单,使用方法如下:先下载附件解压至ThinkPHP/Extend/Vendor目录,目录不存在自己创建.      v ...

  9. NN-Neural Network

    开始学习神经网络(Neural Network) 已有线性与逻辑回归,为什么需要用到NN 实际的应用中,需要根据很多特征进行训练分类器,当今有两个特征下,可以通过下图表述: 然而还有太多的特征需要考虑 ...

  10. CSS实现矩形按钮右边缘的中间有个往里凹的小半圆

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...