游标
游标游标:(指针)在Oracle中,游标是一种机制,是通过关键字 cursor 的来定义一组oracle查询出来的数据集,可以把查询的数据集存储在内存当中,然后通过游标指向其中一条记录,通过循环游标达到循环数据集的目的。我们可以通过该机制将名称分配给SELECT语句并处理该SQL语句中的信息。select * from emp;
游标的分类一. 静态游标–显式游标和隐式游标称为静态游标,因为在使用他们之前,游标的定义已经完成,不能再更改。1.隐式游标:系统自动生成和管理的游标,又叫sql游标。DML语句和单行 select…into…语句会使用隐式游标。2.显示游标:用户自己声明和管理的游标,即指定结果集。当查询返回结果超过一行时,就需要一个显式游标。
二. 动态游标(ref游标)–游标在声明时没有设定,在打开时可以对其进行修改。
游标属性:cursor_name%found 布尔型属性,当最近一次提取游标操作 fetch 成功则为 true,否则为 false;cursor_name%notfound 布尔型属性,与%found 相反;cursor_name%isope ...
plsql流程化控制语句
PLSQL流程化控制语句一、条件判断1.if语句语法:
if 条件一 then 结果一;
elsif 条件二 then 结果二 ;
…
else 结果N;
end if;
2.case when语句语法一:
CASE
WHEN 条件一 THEN 结果一;
WHEN 条件二 THEN 结果二;
…
ELSE 结果; ==注意一定要有else 否则报错==
END CASE;
语法二:
CASE 变量
WHEN 值一 THEN 结果一;
WHEN 值二 THEN 结果二;
…
ELSE 结果; ==注意一定要有else 否则报错==
END CASE;
若没有else报错为:
例题:
输入一个学号,判断它是不是我们班的学生,如果是 打印’XXX是我们班的’,不是打印’我不认识’
1234567declare v_no number :=&学号;begin if v_no < 34 then dbms_ ...
sql语句在plsql中的运用
sql语句在plsql中的运用一. DML语句–数据操纵语句
TCL语句–事务控制语句–可以直接在plsql块中使用的语句
123456begin insert into empa(ename,sal) values ('朱精卫',3000); commit;end;/select * from empa;
二. DDL语句–数据定义语句
–不能直接在plsql块中使用
execute immediate –可以使用字符串中的语句
execute——执行 immediate——立即
declare v_jingwei varchar2(100);begin v_jingwei :=’create table yuanbo(cm number,kg number)’; execute immediate v_jingwei;end;
select * from yuanbo;
三. DQL语句–数据查询语句
–不能直接在plsql块中使用declare v_jingwei varchar2(100); v_emp emp%r ...
变量的数据类型
变量的数据类型一. 标准类型1.数值型(1)十进制
类型
描述
number(数值长度,精度)
数值长度不写时,默认为38,精度正数为精确到小数点后几位,负数为精确到小数点前几位。
int
整数类型 小数位会自动四舍五入 —int(数值长度,精度) 整数型可以带有精度,也可以带有小数
float
浮点型(小数型),跟number一样,不能写精度
1234567891011121314151617declare v_no number(5,2):=123.45;--数值长度剪掉精度是整数位的长度 v_no2 int(5,2) :=123.45; v_no3 int :=123.55; v_no4 float(7) :=123.45; v_no5 float(7) :=555.55; v_no6 float(7) :=456; v_no7 float(10) :=456456;begin dbms_output.put_line(v_no); dbms_output.put_line(v_no2); dbms_output.put_line( ...
PL/SQL
PL/SQL
oracle中的编程语言
一. 概念:SQL 结构化查询语言,用户和数据库之间沟通的语言
PL/SQL 使用过程功能扩展SQL,带有过程控制的SQL
二. 优点:将过程化控制集成在SQL上,从而提高效率,优化数据库的性能
三. 块(快结构是最基本的单位)概念:由代码块组成,每一个块形成一个任务或逻辑单元,通过逻辑条件、循环等来实现一些复杂的功能组成:声明部分、执行部分、异常处理部分
基本语法:declare–声明的内容(变量,常量,游标等)begin –执行的内容(这个块要实现的任务或功能,如果能正常执行,则直接跳到end,如果不能正常执行,则执行exception) exception–异常处理end;
declare——宣布、声明 begin——开始 exception——异常 end——结束
dbms——数据库管理系统 output——输出 line——行
12345678910111213141516171819202122232425262728293031begin dbms_output.put_line(' ...
注释
注释
单行注释 --
多行注释 /* */
方便了解sql语句的作用等
1.列注释语法:COMMENT ON COLUMN 表名.列名 IS ‘注释内容’;
1comment on column emp.deptno is '部门编号';
修改注释:
1.CTRL+鼠标左键 直接修改
2.再次输入语句comment on column emp.deptno is '更改后的注释';
删除注释:
1.CTRL+鼠标左键 直接删除
2.再次输入语句comment on column emp.deptno is '';(单引号内不写内容)
不能使用null(如下图)
2.表级注释语法:COMMENT ON TABLE 表名 IS ‘注释的内容’;
==修改 删除 方法同上==
同义词语法:
1CREATE [OR REPLACE] [PUBLIC] SYNONYM [schema.] synonym_name FOR [schema.] object_name ...
索引
索引索引的起名规则:索引名_表名_列名
说明:1)索引是数据库对象之一(数据库对象有6个:用户,表,视图,索引,序列,触发器),用于加快数据的检索,类似于书籍的目录。在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用目录可以不用翻阅整本书即可找到想要的信息。2)索引是建立在表上的可选对象;–索引的关键在于通过一组排序后的索引键来取代默认的全表扫描检索方式,从而提高检索效率3)索引在逻辑上和物理上都与相关的表和数据无关,当创建或者删除一个索引时,不会影响基本的表4)索引一旦建立,在表上进行DML操作时(例如在执行插入、修改或者删除相关操作时),oracle会自动管理索引5)索引对用户是透明的,无论表上是否有索引,sql语句的用法不变6)oracle创建主键时会自动在该列上创建B-TREE索引
1.六个数据库对象:用户,表,视图,索引,序列,触发器;2.索引类似于字典上目录,是建立在一列或多列上的辅助对象;3.索引可以减少查询结果时读取的数据,从而加快数据的检索;4.当创建或删除索引时,不会对表产生影响;5.创建索引后,会加快查询效率,但是,进行DML操作上 ...
DCL语句
DCL语句1.创建用户 USER语法:CREATE USER 用户名 IDENTIFIED BY 密码;
1CREATE USER SCOTT IDENTIFIED BY SCOTT;
–如果权限不足会报错,显示权限不足,需要赋予权限。
sys/sys system/system 两个管理员账号密码
–无法直接登录,需要修改’连接为‘成SYSDBA
2.赋权(赋予权限) GRANT语法:GRANT CREATE SESSION TO 用户名;
1GRANT CREATE SESSION TO YAOTIAN;
–新建的用户没有表,也不能创建表
2.2 给用户添加基础连接角色 CONNECT 和基础资源角色 RESOURCECONNECT 能够使用户连接到数据库中,并对其他用户的标有访问权限时,做增删改操作RESOURCE 能让用户在自己的窗口中创建表等内容语法:GRANT CONNECT,RESOURCE TO 用户名;–权限是可以多个一起给的
1234GRANT CONNECT,RESOURCE TO YAOTIAN;CREATE TABLE EMP(EMP ...
Hexo本地存储图片
本地存储图片
首先前面几步和网上教程无差别(要注意安装插件的版本)
1.修改配置文件修改配置文件_config.yml 里的post_asset_folder: 为true
此选项可以开启本地图片文件夹
2.安装插件需要使用这个命令(网上的其他命令安装后实测均无效🤔)
npm install https://github.com/CodeFalling/hexo-asset-image –save
如果用其他插件安装,查看生成的源码会发现路径很奇怪 如:…/.io//图片名.png
不难发现中间的图片文件夹路径缺失了
但是如果我们在编写markdown文件时,将图片路径前多加一个 / 会发现图片又可以正常显示了(PS:这种方法解决会导致本地浏览时看不到图片)
3.新建markdown使用如下代码创建
hexo n “文件名”
创建博客文件(此时会同时创建md文件同名的文件夹—用来放图片)
将图片存入生成的文件夹
4.运行Hexo检查运行情况,如果不出意外,图片就可以完美显示了
感谢:
hexo博客引用本地图片不显示 | 小蜗 (koo070.git ...
优雅的写hexo
优雅的写hexo