Oracle
W厚积薄发
这个作者很懒,什么都没留下…
展开
-
windows10安装Oracle11g
1.下载安装包 百度网盘路径:https://pan.baidu.com/s/1IFmvLqmhnydQfjl9xWLAag 提取码:u70s2.两个文件一起解压 3.右键管理员运行--setup.exe(注意:如果出...原创 2020-03-01 17:34:37 · 500 阅读 · 0 评论 -
MySQL中递归查询
今天在业务中,需要对sql ,进行修改,之前的sql 是跑在Oracle中,现在跑在MySQL上1. 在Oracle中sql 语句如下SELECT UUID, SUBSTR(XS,2,length(XS)) as ZTC, MC,XSPY,PARENTID FROM OA_ZTC where (xs like '%工业%' or XSPY like '%工业%') START...原创 2019-12-05 16:06:10 · 202 阅读 · 0 评论 -
toad导入数据库
1. 菜单栏点击--》Database --》 Import --》Import Utility Wizard 2. next --》 选择你要添加的schema 3. next ...原创 2019-11-25 11:13:28 · 352 阅读 · 0 评论 -
toad创建用户
在toad下创建用户:1. 选择users 2 . 点击create user 3. 输入用户名和密码 ...原创 2019-11-25 09:16:31 · 1262 阅读 · 0 评论 -
在Oracle中id去重取最大值
一、创建Oracle表 在Oracle中创建getmaxnum表create table getmaxnum( id nvarchar2(20), num nvarchar2(30), name nvarchar2(50));二、添加数据 在表中插入数据insert into getmaxnum values('1','2','...原创 2019-11-19 19:28:31 · 2428 阅读 · 0 评论 -
oracle 中decode和mysql中 case when then
在数据查询中有时候需要对数据进行判断,显示不同的值。一、Oracle例如:查询的字段值如果是委员本人,显示1,录入人员显示2,其他人员显示0. select decode('12','委员本人','1','录入人员','2','0') from dual;用java语言解释就是,这里字段值,用‘12’代替if(字段值.equals("委员...原创 2019-11-19 17:00:20 · 224 阅读 · 0 评论 -
在Oracle中使用SYS_CONNECT_BY_PATH的用法
适用于在Oracle中的递归查询中,适用SYS_CONNECT_BY_PATH对每个节点中的数据进行拼接例如在本案例中,查询中LPAD_GLID的数据后,将每一级节点的LPAD_GLID的数据进行拼接,放在每一级上。例如:select xh,glid,level,LPAD (glid, 3, '0') lpad_glid,SYS_CONNECT_BY_PATH(LPAD (glid,...原创 2019-11-13 17:40:44 · 323 阅读 · 0 评论 -
Oracle中lpad的用法
在Oracle中适用lpad从左边对指定字段的数据进行填充语法格式如下: lpad( 填充字段, 填充后的长度,使用什么填充 )如下例子:在递归遍历中对,glid进行填充,填充后的长度是3,用0进行填充select xh,glid,level,LPAD (glid, 3, '0') lpad_glid from YJOA_ios.rsgl_dwjgb WHERE s...原创 2019-11-13 17:33:21 · 1943 阅读 · 0 评论 -
Oracle中char,varchar,varchar2
1. char 和 varchar的区别char的长度是固定的,在存储中比如存储“abc”,char(6),实际在库中存储的是“abc ”varchar 长度是可变的,还是以上例子,在库中存储的就是“abc”2. varchar 和 varchar2 的区别varchar 存储汉字2个字节,英文一个字节,存储空用空字符串表示varchar2 存储任何字符都按照两个字...原创 2019-10-31 10:24:27 · 366 阅读 · 0 评论 -
Oracle中trunc的使用
--返回当年的第一天select trunc(sysdate,'yyyy') from dual;--返回当月的第一天select trunc(sysdate,'MM') from dual;--返回当前时间,精确到小时select trunc(sysdate,'hh') from dual;--返回当前时间,精确到分钟select trunc(sysdate,'mi') from ...原创 2019-10-31 09:26:35 · 257 阅读 · 0 评论 -
Oracle中递归查询
在业务需求中,需要将数据中具有上下级关系的数据查询出来,这个时候考虑使用Oracle中的递归查询。语法:select * from 表名 start with 条件一 connect by prior 条件二 条件一:表示查询节点的开始节点条件二:表示按照什么条件进行递归查询案例:创建具体递归的数据表:...原创 2019-09-29 15:33:17 · 634 阅读 · 0 评论 -
2019-09-11
业务需求:1. 需要从单位信息表中根据项目id获取单位名称2. 根据单位名称,将专家表中的相同的单位名称的专家信息删除掉3. 还要从专家履历表中,查询专家获取也没有相同的单位名称单位信息表:根据uuid获取sqdw字段专家信息表:专家履历表:在程序中的sql语句:select * from (select * from zj_jbxx z...原创 2019-09-23 14:53:23 · 222 阅读 · 0 评论 -
游标
游标主要针对结果集,获取结果集中的每一行数据1.提交结果集中的数据DECLARE C_NO STU.SNO%TYPE;C_NAME STU.SNAME%TYPE;CURSOR CUR_STUISSELECT SNO,SNAME FROM STU ORDER BY SNO;BEGIN OPEN CUR_STU; FETCH CUR_STU INTO C_NO,C...原创 2019-08-12 14:52:16 · 151 阅读 · 0 评论 -
触发器:非工作时间限制操作数据
限制在工作日9点到18点之间才可以操作数据CREATE OR REPLACE TRIGGER TRI_SJXZBEFORE INSERT OR DELETE OR UPDATE ON STUBEGIN IF(TO_CHAR(SYSDATE,'DAY') IN ('星期六','星期日') OR (TO_CHAR(SYSDATE,'HH24:MI') NOT BETWEEN '09:...原创 2019-08-09 17:03:54 · 1059 阅读 · 1 评论 -
Oracle数据库整体备份
该方法是对Oracle中的数据进行整体备份,exp是Oracle中最为古老的工具1.进入到自己Oracle的bin目录D:\>cd D:\app\wangxing\product\11.2.0\dbhome_1\BIN2.在后边输入EXP 用户名/口令 File=存储路径 【还有各种关键字,可不写】3. 导出数据库的最终格式:D:\>cd D:\app\w...原创 2019-08-14 10:57:08 · 640 阅读 · 0 评论 -
Oracle中导出用户下的所有数据
导出指定用户下的数据1 . 因为我在path环境中配置了Oracle的bin目录,所以直接这样写就可以exp 用户名/口令 file = 文件路径\文件名.dmp owner = (spring)exp spring/spring file = D:\spring.dmp owner = (spring)2 如果没有在path环境中配置,需要先进入到Oracle中的bin目录...原创 2019-08-14 11:15:15 · 1098 阅读 · 0 评论 -
导出指定表数据
首先,进入到Oracle的bin目录,然后输入下面语句D:\app\wangxing\product\11.2.0\dbhome_1\BIN>exp spring/spring file = D:\stu_grade.dmp tables=(STU,GRADE)exp 用户名/口令 file = 文件路径\文件名.dmp tables = (表名)...原创 2019-08-14 11:27:23 · 138 阅读 · 0 评论 -
导出指定表的部分数据
针对表中的部分内容,进行导出导出表中学号以‘12‘开头的数据D:\app\wangxing\product\11.2.0\dbhome_1\BIN>exp spring/spring file = D:\stuno.dmp tables=(STU) query=\"where sno like '12%'\"...原创 2019-08-14 13:33:28 · 306 阅读 · 0 评论 -
恢复数据库,对数据库中的整体数据恢复
在恢复数据时,需要将整个数据库的数据进行删除首先进入到Oracle的bin目录下:D:\app\wangxing\product\11.2.0\dbhome_1\BIN>然后输入:IMP 用户名/口令 FILE=路径名\文件名.DMP FULL = Y IGNORE = Y...原创 2019-08-14 13:42:51 · 178 阅读 · 0 评论 -
导入指定用户下的表
在导入指定用户下的表时,需要对原来的表进行删除导入语句如下imp spring/spring file=D:\stu_grade.dmp tables=(STU,GRADE)如果在path路径下没有配置bin路径,需要先进行到Oracle中的bin目录然后再输入上面的语句...原创 2019-08-14 14:00:06 · 199 阅读 · 0 评论 -
触发器:对指定表中的某一列数据进行修改触发
create or replace trigger tr_xzczbefore update or delete on STUfor each row begin dbms_output.put_line('执行。。。。'); IF :OLD.SDEPT = '12计算机' THEN IF UPDATING THEN ...原创 2019-08-12 08:59:59 · 2034 阅读 · 0 评论 -
触发器:创建DML触发器
创建一个表,记录这个表的插入、删除、修改操作,并将操作保存在一个日志表中1.创建一个表create table a( id VARCHAR2(10), NAME VARCHAR2(10));2.创建表a的日志表CREATE TABLE A_LOG( CRT_DATE TIMESTAMP, EVENT_NAME VARCHAR2(20), ...原创 2019-08-12 11:06:34 · 836 阅读 · 0 评论 -
事务:提交、回滚、设置保存点
INSERT INTO STU VALUES('120008','李四','男',29,'12计算机',SYSDATE);UPDATE STU SET SAGE = SAGE -1;SAVEPOINT UPDATEPOIN;DELETE FROM STU WHERE SNO = '120008';ROLLBACK TO SAVEPOINT UPDATEPOIN;SELECT ...原创 2019-08-12 14:48:08 · 484 阅读 · 0 评论 -
触发器的学习
解决实际问题: 在应用开发中,有时候数据的操作保存是在用户登录系统之后进行操作,有时候数据可能由系统管理员直接操作,这种情况下会导致前后数据不一致(假如在系统中,删除一条数据,是从两个表中进行删除。如果系统管理员在数据库中进行删除可能只删除一条,在这种情况下会造成前后端数据的不一致)。这时候,可以在表中增加触发器。在Oracle中提供5种类型的触发器:语句触发器、行触发器、ins...原创 2019-08-09 16:27:25 · 262 阅读 · 0 评论