随笔分类 -  数据库

摘要:1、百度下载plsqldev1306x64.msi 【plsql安装包】 2、百度下载instantclient_18_5【oracle-client】 下载的客户端文件中新建instantclient_18_5\network\admin\tnsnames.ora(添加实例) 一、在安装的plsq 阅读全文
posted @ 2021-02-26 15:03 64Byte 阅读(501) 评论(0) 推荐(1)
摘要:索引: 提高查询效率, 增删改: 效率降低表的数据量很大, 才会有查询效率优化 唯一索引(主键)一般用于身份证、学号 CREATE [UNIQUE] INDEX 索引名 ON 表名(列的列表) B树索引(唯一值多,重复值少的) 一般用于姓名 create index idx_dexId on dex 阅读全文
posted @ 2020-08-04 15:40 64Byte 阅读(286) 评论(0) 推荐(1)
摘要:转载:https://www.cnblogs.com/xiaozengzeng/p/10720226.html 三范式 1NF:字段不可分; 2NF:有主键,非主键字段依赖主键; 3NF:非主键字段不能相互依赖; 解释: 1NF:原子性 字段不可再分,否则就不是关系数据库; 2NF:唯一性 一个表只 阅读全文
posted @ 2020-08-04 15:17 64Byte 阅读(124) 评论(0) 推荐(1)
摘要:为了提高SQL语句的执行效率,我们需要对SQL语句进行优化,而SQL语句的优化 可以从以下方面进行优化: 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃 阅读全文
posted @ 2020-04-23 21:18 64Byte 阅读(173) 评论(0) 推荐(0)
摘要:存储过程 之前的PL/SQL块, 匿名的PL/SQL 没有名字, 数据库不会存储, 每一次执行: 都要经过编译-运行存储过程: 都是命名的PL/SQL, 存储在数据库中,作为数据库的一个对象,类似表, 只需要第一次把这个存储过程编译(把这个存储过程保存到数据库), 后面调用存储过程, 不需要进行再编 阅读全文
posted @ 2020-04-21 18:59 64Byte 阅读(274) 评论(0) 推荐(0)
摘要:包 把之前独立的存储过程,函数 写在一起, 形成一个模块, 方便管理维护 包: 分为: 包的头部 函数,存储过程的声明,游标的声明 包的主体: 对函数,过程进行实现 --包的头部的语法: create or replace package 包名 is 过程或函数的定义 …. end; --注意: 同 阅读全文
posted @ 2020-04-21 18:49 64Byte 阅读(174) 评论(0) 推荐(0)
摘要:序列 Oracle中在增加一条数据时,为了实现自增长,需要使用序列。 创建数字, 应用在 id列, 这一列,是数字, 唯一的, 使用序列来产生,不需要人工添加, 后一个值 是在前一个值的基础上加增量(默认1) 创建序列: create sequence 序列名 [INCREMENT BY n] // 阅读全文
posted @ 2020-04-21 18:44 64Byte 阅读(143) 评论(0) 推荐(0)
摘要:函数 函数的参数都是in 输入参数,return是输出 语法: create [or replace] function 函数名 (参数1 类型1, 参数2 类型2,....) return 返回值类型 is/as [定义变量] begin --执行语句 return 结果; [exception 阅读全文
posted @ 2020-04-21 18:34 64Byte 阅读(400) 评论(0) 推荐(0)
摘要:视图 视图:(view): 虚表, 只是把一些查询SQL保存起来, 取一个名字, 不是保存这个查询的数据 每次使用视图的时候,只是重新执行SQL,方便使用视图的基表:视图来源的表 创建视图语法: create [ or replace ] [ force ] view [schema.]view_n 阅读全文
posted @ 2020-04-21 18:25 64Byte 阅读(112) 评论(0) 推荐(0)
摘要:事务 在数据库中事务是工作的逻辑单元,一个事务是由一个或多个完成一组的相关行为的SQL语句组成,通过事务机制确保这一组SQL语句所作的操作要么完全成功执行,完成整个工作单元操作,要么一点也不执行。 主要作用:确保数据库的完整性。 commit 提交 rollback回滚 例如: 银行转账(业务) 张 阅读全文
posted @ 2020-04-21 18:17 64Byte 阅读(121) 评论(0) 推荐(0)
摘要:触发器 特殊的存储过程, 不需要我们手动调用, 当用户触发某一个行为, Oracle自动执行相对于的触发器 触发器的语法: trigger CREATE [OR REPLACE] TRIGGER 触发器名 触发时间 触发事件 [ON表名/视图名] [FOR EACH ROW] [when 条件] / 阅读全文
posted @ 2020-04-21 17:57 64Byte 阅读(247) 评论(0) 推荐(0)
摘要:索引: 提高查询效率, 增删改: 效率降低 表的数据量很大, 才会有查询效率优化 通俗的来讲,索引在表中的作用,相当于书的目录对书的作用。 索引的特点 1.与表独立存放,但不能独立存在,必须属于某个表 , 数据库开辟空间存储索引 2.由数据库自动维护,表被删除时,该表上的索引自动被删除, 删除表的数 阅读全文
posted @ 2020-04-21 17:25 64Byte 阅读(207) 评论(0) 推荐(0)
摘要:游标 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库。这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率。 就是(内存空 阅读全文
posted @ 2020-04-16 22:08 64Byte 阅读(327) 评论(0) 推荐(0)
摘要:Oracle 的异常分类: 1. 预编译异常: Oracle 可以直接捕获异常, 并且给这个异常取了异常 /* 异常名 NO_DATA_FOUND 语句无返回数据 V TOO_MANY_ROWS 在执行select into 语句时返回多行时出现 V LOGIN_DENIED 使用无效的用户名和口令 阅读全文
posted @ 2020-04-15 23:07 64Byte 阅读(322) 评论(0) 推荐(0)
摘要:if语句 oracle: elsif java: else if if (条件) then pl/sql或sql语句 [elsif (条件) then ] ...可以有多个elsif [else] end if; 必须写 结束大括号 例: --完成根据员工的编号查看员工需要交的税的情况 大于等于30 阅读全文
posted @ 2020-04-15 23:00 64Byte 阅读(686) 评论(0) 推荐(0)
摘要:pl/sql编程: 只适用于Oracle 标准sql: insert, update,delete,select 不能进行分支, 循环,变量... Oracle在标准SQL基础上,扩展, 扩展的叫做PLSQL, 一个PL/SQL 包含一组SQL语句, 简单的理解: 类似于java的方法, 进行异常处 阅读全文
posted @ 2020-04-15 22:48 64Byte 阅读(184) 评论(0) 推荐(0)
摘要:联合查询 Union: 对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序Union All:对两个结果集进行并集操作,包括重复行,不进行排序; A U B: 把A与B的集合合并 Intersect:对两个结果集进行交集操作,不包括重复行,同时进行默认规则的排序; A ∩ B : 存在A 阅读全文
posted @ 2020-04-15 22:36 64Byte 阅读(260) 评论(0) 推荐(0)
摘要:分页查询 不同数据库的sql 不一样 方言 数据量很大, 如果一次性显示, 用户的体验度差, 原因: 数据量越大, 查询的耗时越多, 用户等待时间越多 把数据分批查询, 分页 一页显示的多少行数据: 页容量: pageSize 固定 数字 查询第几页: 当前页: 数字 : pageIndex Ora 阅读全文
posted @ 2020-04-13 22:55 64Byte 阅读(303) 评论(0) 推荐(0)
摘要:语法: select *(所有列)/列名1.列名2.,,, from 表名 [where 条件] --对整张表的筛选 [group by 列名1[,列名2,...]] 分组 [having 条件] --对分组之后的筛选 [order by 列名 排序方式[,列名2 排序方式2,...] --排序 n 阅读全文
posted @ 2020-04-13 22:41 64Byte 阅读(548) 评论(0) 推荐(0)
摘要:添加数据 -- 列的值区分大小写,数据区分大小写 -- 关键字,表名,列名这些不区分大小写 -- 字符类型, 日期类型 赋值必须使用单引号引起 -- number类型, 可以使用单引号引起,也可以不使用 -- sysdate: 关键字, 表示获取当前系统时间 INSERT INTO t_studen 阅读全文
posted @ 2020-04-13 21:58 64Byte 阅读(159) 评论(0) 推荐(0)