Oracle
文章平均质量分 81
象在舞
谁说大象不能跳舞!
展开
-
Oracle中的序列(Sequence)
1、什么是序列 序列(SEQUENCE)是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。不占用磁盘空间,占用内存。其主要用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值。2、序列的创建 创建序列需要CREATE SEQUENCE系统权限。序列的创建语法如下:CREATE SEQUENCE 序列名 [INCREMENT BY n] [START WITH n] [{MAXVA...原创 2021-07-19 18:43:07 · 4344 阅读 · 0 评论 -
Oracle中的触发器(trigger)
1、触发器的定义 数据库触发器是一个与表相关联、存储PL/SQL语句的“东西”。每当一个特定的数据操作语句(insert、update、delete)在指定的表上发出时,Oracle自动执行触发器中定义的语句序列。例如:当员工信息插入后,自动输出“插入成功”的信息。create or replace trigger empTrigger after insert on emp for each rowdeclare -- 这里存放本地变量begin dbms_outpu...原创 2021-07-19 17:05:07 · 5047 阅读 · 5 评论 -
如何在Hive、MySQL、Oracle中分别添加自增序号
最近公司业务涉及到了在相应库中添加自增序号这种操作,闲暇之余,整理如下,仅供参考~一、Hive 1、首先在Hive中建立一个测试表create table xzw(id int, name string) clustered by (id) into 2 buckets stored as orc TBLPROPERTIES('transactional'=...原创 2020-04-29 15:14:25 · 2309 阅读 · 1 评论 -
Oracle中的with as语法
with as语句是一个子查询,使用它可以增强sql的可读性,当查询中多次用到某一部分时,可以使用该语句创建一个公共的临时表并将结果存储在用户临时表空间中,可以多次引用避免了重复解析,从而增强了性能,执行效率会提高不少。临时表在一次查询结束后自动清除。 一起来看一个简单的例子:WITH CS1 AS (SELECT 1 + 2 L1 FROM DUAL),C...原创 2020-03-13 11:48:38 · 829 阅读 · 0 评论 -
【Oracle】 ORA-01791: 不是 SELECTed 表达式
【问题描述】 今天执行SQL的时候出现了如下错误:ORA-01791: 不是 SELECTed 表达式 执行的SQL语句如下:SELECT DISTINCT A.GFMC, A.GFSBH, A.DZDH, A.XFMC, A.XFSBH FROM PD_NCP_GHRJCB A ORDER BY A.GFMC, A.JE DESC;...原创 2020-03-11 22:21:05 · 667 阅读 · 0 评论 -
PLSQL中使用SQL语句直接导入数据到表
在使用PLSQL往数据库导入数据的时候,可以直接使用SQL语句进行导入,示例如下:SELECT * FROM test1_12366 FOR UPDATE;执行后会得到如下结果: 1、点击上图中“小锁按钮”;2、选中所有的列,从Excel中将数据拷贝进来;3、点击上图中的“对号”,并提交即可。...原创 2018-12-12 21:07:25 · 3593 阅读 · 0 评论 -
【Oracle】 ORA-00257: archiver error. Connect internal only, until freed
最近在操作Oracle数据库的时候出现了如下的一个错误:ORA-00257: archiver error. Connect internal only, until freed 这个错误产生的原因主要是因为归档日志太多,导致硬盘空间不足导致的,可以通过删除日志或加大空间就能够解决,具体操作如下:(这里通过删除日志的方式进行解决)1、首先在终端使用如下...原创 2019-04-30 14:01:01 · 2557 阅读 · 0 评论 -
Oracle归档模式(archivelog)启动和关闭
1、登录数据库sqlplus / as sysdba2、查看当前的归档模式archive log list3、关闭数据库shutdown immediate;4、mount状态启动数据库startup mount;5、归档模式操作--启动归档模式:alter database archivelog;--关闭归档模式:alter database ...原创 2019-04-30 14:58:42 · 642 阅读 · 0 评论 -
Python连接Oracle数据库
之前小编写过一篇文章,叫做《Python连接MySQL数据库》,本文介绍Python连接Oracle数据库,在操作语言上两者类似,本文主要介绍获取Oracle数据库连接等相关操作,具体操作语言,可以参考《Python连接MySQL数据库》这篇文章。1、首先需要导入相关的库——cx_Oracleimport cx_Oracle同样,没有该库的可以使用《Python连接M...原创 2019-05-14 13:18:46 · 726 阅读 · 0 评论 -
PLSQL创建Oracle定时任务
本文通过一个简单的小例子向大家展示如何通过PLSQL创建Oracle定时任务~1、创建两个测试表(xzw、person),两个表有相同的字段,分别是id,name,pwd。2、创建存储过程,向person表中插入xzw表中的数据:create or replace procedure aaa is exe_sql_1 varchar2(4000); exe_sql_2 v...原创 2019-07-30 15:16:21 · 988 阅读 · 0 评论 -
Maven加载Oracle驱动
Maven3不提供OracleJDBC Driver,所以为了在Maven中使用Oracle JDBC驱动,需要将驱动手动添加到本地Maven仓库。首先需要到相关网站下载Oracle驱动包,然后需要确定我们Oracle的版本,方式如下:SELECT * FROM v$version;然后使用如下方式将驱动包添加到本地Maven仓库中:mvn install:install...原创 2019-09-15 17:22:25 · 604 阅读 · 0 评论 -
使用PLSQL将文本数据导入表
打开PLSQL,点击“Tools”-->“Text Importer...”,点击下图的按钮打开所要导入的文件导入文件之后,在下方进行一些列的设置之后,点击上图中的“Data to Oracle”点击“Data to Oracle”之后的操作如下图所示 ...原创 2018-12-12 20:55:36 · 2129 阅读 · 0 评论 -
Oracle存储过程中包的使用举例
一、创建测试表--创建测试表create table pes(ID number(10),NAME varchar2(20),pwd varchar2(20),TYPE VARCHAR(20)); insert into pes values(1,'xzw','888','Y');insert into pes values(1,'Eric','888','Y');insert i...原创 2018-10-17 15:51:59 · 736 阅读 · 0 评论 -
Oracle中to_Char的用法
最近用Oracle比较多,今天遇到了to_Char这个函数,简单总结一下to_Char的用法,希望对大家有所帮助。一、下图是to_Char函数的几个例子二、下图是to_Char函数用于将日期转换为字符串时的有效参数列表,这些参数可以在许多情况下使用三、下图是to_Char函数的日期示例四、在一些例子中,format_mask参数以FM开头,这意味着没有零和空格,下图展示了一些例子通过上...翻译 2018-03-08 16:44:44 · 16786 阅读 · 0 评论 -
Oracle中的NVL函数、NVL2函数和NULLIF函数
一、NVL函数的格式如下: NVL(expr1,expr2),含义是:如果Oracle中第一个参数的值为空,那么显示第二个参数的值,如果第一个参数不为空,则显示第一个参数的值。二、NVL2函数的格式如下:NVL2(expr1,expr2,expr3),含义是:如果Oracle中第一个参数的值为空,那么显示第二个参数的值,如果第一个参数的值不为空,那么显示第三个参数的值。三、NULLIF...原创 2018-03-22 19:34:15 · 3234 阅读 · 0 评论 -
MySQL、Oracle中的abs()函数
不管是MySQL还是Oracle,它们中的abs()函数用法都是一样的,以Oracle举例,如下:SELECT ABS(-10) FROM student; MySQL中的abs()函数也是一样的用法~原创 2018-03-19 17:36:57 · 5740 阅读 · 0 评论 -
Oracle和MySQL中通用的字符串截取函数——substr()
字符串的截取是SQL语句中很常见的一种操作,Oracle和MySQL的字符串在字符串的截取上还是有一点区别的,Oracle中的字符串截取函数为substr(),而MySQL中的字符串截取函数可以为substr()和substring()。显然,不管Oracle还是MySQL中,对于substr()都是通用的。substr()函数的语法格式为:(1)substr(expr1,e...原创 2018-03-31 11:44:56 · 2445 阅读 · 0 评论 -
Oracle日期常用函数(SYSDATE)
SYSDATE函数可以得到目前系统的时间,例如:select sysdate from dual;SYSDATE函数常用的格式举例如下:--加法 select sysdate,add_months(sysdate,12) from dual; --加1年 select sysdate,add_months(sysdate,1) from dual; --加1月 select sysdate,...原创 2018-03-26 09:57:28 · 64997 阅读 · 1 评论 -
MyEclipse将Java项目打成jar文件
最近需要用代码调用数据库中的数据,本地测试通过了,但是在打成jar包提交到Linux的过程中总是报错,错误如下:[root@master01 ~]# java -jar yhzc/test.jar java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver at java.net.URLClassLoa...原创 2018-05-02 13:05:32 · 569 阅读 · 1 评论 -
Hive与Oracle之间利用Sqoop进行数据的导入导出
近期在工作中遇到了Hive与Oracle之间数据导入导出的问题,故整理如下,以供需要者参考。一、Oracle数据导入到Hive中/usr/bin/sqoop import \--connect jdbc:oracle:thin:@72.*.*.185:1521:dbcxj2 \--username name --password pw \--table tableName \-...原创 2018-05-07 20:26:29 · 1516 阅读 · 10 评论 -
设置PL/SQL Developer关键字自动变成大写
Tools-->Preferences-->Editor-->Keyword case-->Uppercase原创 2018-06-08 16:37:29 · 7092 阅读 · 0 评论 -
Oracle数据库中的方差、标准差与协方差
一、方差与标准差/*STDDEV()函数功能描述:计算当前行关于组的标准偏离。(Standard Deviation)STDDEV_SAMP()函数功能描述:该函数计算累积样本标准偏离,并返回总体变量的平方根,其返回值与VAR_POP函数的平方根相同。区别:当计算的输入数据只有一行时,stddev()返回0,而stddev_samp()返回null。*/--例子:SELECT de...原创 2018-06-26 16:24:13 · 7216 阅读 · 0 评论 -
Oracle存储过程的简单举例
一、建立测试数据--建立测试数据:create table person(编号 number(10),姓名 varchar2(20),密码 varchar2(20));insert into person values(1,'xzw','888');select * from person;查询结果如下:二、建立存储过程--建立存储过程:create or re...原创 2018-10-17 14:47:13 · 5255 阅读 · 2 评论 -
Oracle、MySQL取前10条数据比较
最近因为工作原因需要使用Oracle数据库进行操作,Oracle跟MySQL在某些函数上还是存在着一定差异的。这里以“取前10条数据”为例进行说明。MySQL取前10条数据:SELECT * FROM tableA LIMIT 10;Oracle取前10条数据:SELECT * FROM tableA WHERE rownum < 11;...原创 2018-03-08 10:49:56 · 7406 阅读 · 0 评论