数据库
大黄的Java笔记
种一棵树最好的时间是十年前,其次是现在。虽然我很菜,但我在努力。每天记录一点新知识,就是最大的进步。
展开
-
PLSQL Developer/Oracle中文乱码问题解决
第一步、查看服务器端编码select userenv('language') from dual;第二步、执行语句 select * from V$NLS_PARAMETERS 查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。第三步、如果不是,需要设置环境变量.PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码.第四步、设置环境变量计算机->属性->高级系统设置->环境变量->新建原创 2021-01-15 10:10:38 · 567 阅读 · 2 评论 -
oracle的start with connect by prior如何使用
oracle的start with connect by prior如何使用oracle的start with connect by prior是根据条件递归查询"树",分为四种使用情况: 第一种:start with 子节点ID='...' connect by prior 子节点ID = 父节点IDselect*frommdm_organization o startwitho.org_code='10000008'connectbyprioro.org_code=o...原创 2020-11-25 14:13:09 · 272 阅读 · 0 评论 -
MySQL面试题
最近跟着视频学习了很多关于MySQL相关的知识,今天看到一篇MySQL相关的面试题,发现其中的一些问题自己也回答不好,虽然知识点大部分都知道,但是无法将知识串联起来。最终决定将自己零散的知识体系以面试题的方式梳理一下,试着用回答问题的方式,让自己对知识点的理解更加深入一点。索引相关1、什么是索引?答:MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。句子主干提取,就可以得到索引的本质:索引是一种数据结构。2、索引是一个什么数据结构?答:索引的数据结构原创 2020-10-15 14:52:55 · 394 阅读 · 0 评论 -
Oracle的in函数不接受字符串参数问题(报错:无效数字)
最近遇到一个奇葩的问题,我需要在前台传参数到数据库存储过程里使用。参数里面的数据是形如这样1355000004,1355000005,1355000005传进去的。最后参数放进存储过程里面会报"无效数字"的错。但是单独将SQL语句拿出来,将参数里面的值带进去又能成功的查询出想要的结果。最开始我以为是传进去的值得格式不正确,我又将它弄成了数组的形式传进去,形如:'1355...原创 2019-11-15 10:07:10 · 2453 阅读 · 0 评论 -
写SQL常用的操作记录
select (case when length(t.description)>20 then substr(t.description,0,20)|| '...' when length(t.description)<20 then t.description end) a, TO_CHAR(TRUNC(t.amou...原创 2019-10-24 17:10:48 · 272 阅读 · 0 评论 -
数据库基础知识
1)什么是存储过程?有哪些优缺点?存储过程就像是编程语言中的函数一样,封装了我们的代码(PLSQL,T-SQL)例如:-------------创建名为GetUserAccount的存储过程----------------createProcedureGetUserAccountasselect*fromUserAccountgo-------------执行上...转载 2019-10-24 15:19:16 · 1148 阅读 · 0 评论 -
Oracle 对数字(如金额)0或0.几的处理
案例当查询的内容为‘0’ 或者为‘0.几’的时候,oracle会将前面的0去掉,最终显示为‘.55’,而不是我们想要的‘0.55’。处理方法TO_CHAR(待格式化数据, 'FM99999990.00');作用对数据进行格式化说明 其中的①9代表:如果存在数字则显示数字,不存在则显示空格②0代表:如果存在数字则显示数字,不存在则显示0,即占位符。③FM代...原创 2019-08-14 14:42:14 · 2763 阅读 · 0 评论 -
PLSQL学习之基础
PLSQL介绍PLSQL是Oracle对SQL99的一种扩展,基本每一种数据库都会对SQL进行扩展,Oracle对SQL的扩展就叫做PLSQL...SQL99是什么(1)是操作所有关系型数据库的规则 (2)是第四代语言 (3)是一种结构化查询语言 (4)只需发出合法合理的命令,就有对应的结果显示SQL的特点(1)交互性强,非过程化 (2)数据库操纵能力强,只需发送命令,无...转载 2019-06-25 11:20:20 · 2346 阅读 · 0 评论 -
PLSQL学习之触发器
触发器在PLSQL中也有个类似与我们Java Web中过滤器的概念,就是触发器...触发器的思想和Filter的思想几乎是一样的....值得注意的是:对于触发器而言,是不针对查询操作的。也就是说:触发器只针对删除、修改、插入操作!触发器语法 CREATE [or REPLACE] TRIGGER 触发器名 {BEFORE | AFTER} { IN...转载 2019-06-25 11:05:10 · 763 阅读 · 0 评论 -
PLSQL学习之存储过程和存储函数
存储过程和存储函数在Oracle中,存储过程和存储函数的概念其实是差不多的,一般地,我们都可以混合使用。只不过有的时候有的情况使用过程好一些,有的情况时候函数的时候好一些。下面会讲解在什么时机使用过程还是函数的。首先,我们在学习存储过程和存储函数之前,先要明白我们为什么要学他....其实存储过程和函数就是类似与我们在Java中的函数的概念....到目前为止,我们的PLSQL是有几个...转载 2019-06-25 10:57:08 · 845 阅读 · 0 评论 -
一份值得收藏的的 MySQL 规范
数据命名规范 所有数据库对象名称必须使用小写字母并用下划线分割。 所有数据库对象名称禁止使用 MySQL 保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)。 数据库对象的命名要能做到见名识意,并且最后不要超过32个字符。 临时库表必须以 tmp_ 为前缀并以日期为后缀,备份表必须以 bak_ 为前缀并以日期 ( 时间戳 ) 为后缀。 ...转载 2019-03-04 09:22:09 · 216 阅读 · 0 评论 -
多个表左连接LEFT JOIN
多个表左连接(LEFT JOIN) ,在此记录一下。SELECT ts.shift_id, ts.line_id, ts.tour_guide_id, ts.hotel_id, shift_name, tourist_standard, quote, car_type, start_date, return_date, tl.line_name, tg.tour_guide_name, hi...原创 2018-12-14 11:35:49 · 49017 阅读 · 2 评论 -
Mysql添加用户,给用户授权
创建用户CREATE USER 'username'@'host' IDENTIFIED BY 'password';username – 你将创建的用户名说明:host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如 果想让该用户可以从任意远程主机登陆,可以使用通配符%password – 该用户的登陆密码,密码可以为空,如果为空则该用户可以...转载 2018-08-16 19:14:12 · 91693 阅读 · 0 评论 -
项目中常用的SQL语句
SQL项目常用整理1、创建表 语法:CREATE tabal 表名(字段+约束,字段+约束); 举例: create table test01( id int not null, name varchar(8) not null, gender varchar2(2) not null, a...原创 2018-07-21 22:23:55 · 1198 阅读 · 0 评论 -
视图、序列、索引、同义词总结
一、视图1、视图的概念: 有的时候我们需要关联多张表获得一个查询结果集, 有的时候我们需要写很复杂的条件得到一个想要的结果集, 有的时候我们需要关联多张表获得一个查询结果集,有的时候我们需要写很复杂的条件得到一个想要的结果集, 我们不想每次要想这些数据的时候都重新去写很复杂的 我们不想每次要想这些数据的时候都重新去写很复杂的SQL语句,怎么办? 我们可以...原创 2018-07-21 22:13:16 · 803 阅读 · 0 评论 -
Oracle Insert增强与SQL进阶
INSERT增强与SQL进阶:一、同时向多张表中插入数据语法:INSERT ALL INTO (表1)VALUES (查出来的字段1, 查出来的字段2)INTO (表2)VALUES (查出来的字段1, 查出来的字段2)SELECT 语句;举例:INSERT ALL INTO sal_historyVALUES (empid, hiredate, sal)INTO m...原创 2018-07-21 21:58:23 · 458 阅读 · 0 评论 -
Oracle Group by语句和递归查询总结
一、Group By Rollup的使用方法1、概念 在Group By 中使用Rollup产生常规分组汇总行以及分组小计: 2、举例 SELECT department_id ,job_id ,SUM(salary) FROM employees WHERE department_id < 60 GROUP BY ROLLUP(d...原创 2018-07-21 21:49:52 · 2034 阅读 · 0 评论